简体   繁体   中英

Tried adding adview in webview but the ad just scrolls along with the webpage

At first I tried using Vertical Linear layot and added webview and adview within the app but the app just crashes. The below xml works but the ad scrolls along with the static webpage. I'm new to programming as general and I learnt some HTML in school so I used static webpages to code the app whilst using webview in java. I also tried this : Align AdView (AdMob) to bottom of screen with WebView on Android Layout to no avail. I tried googling but nothing seems to help. How do I fix the ad to bottom of the screen ? This is my first attempt at creating an android app.

<WebView  xmlns:android="http://schemas.android.com/apk/res/android"  xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<RelativeLayout xmlns:ads="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"

    android:focusableInTouchMode="true">
    <com.google.android.gms.ads.AdView
        android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:layout_alignParentBottom="true"
        ads:adSize="BANNER"
        ads:adUnitId="@string/banner_ad_unit_id">
    </com.google.android.gms.ads.AdView>
</RelativeLayout>
</WebView>

My java code is :

public class Book extends AppCompatActivity {

 @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_book);
    MobileAds.initialize(getApplicationContext(), "ca-app-pub-3940256099942544~3347511713");
    AdView mAdView = (AdView) findViewById(R.id.adView);
    AdRequest adRequest = new AdRequest.Builder().build();
    mAdView.loadAd(adRequest);
    WebView mWebView = null;
    mWebView = (WebView) findViewById(R.id.webview);
    mWebView.loadUrl("file:///android_asset/book.html");
}

}

give this a try

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent">

    <WebView 
       android:id="@+id/webview"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_above="@+id/adView"
       android:layout_alignParentTop="true" />

   <com.google.android.gms.ads.AdView
       android:id="@+id/adView"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_alignParentBottom="true"
       ads:adSize="BANNER"
       ads:adUnitId="@string/banner_ad_unit_id" />

</RelativeLayout>

Java

MobileAds.initialize(getApplicationContext(), "replace");
AdView mAdView = (AdView) findViewById(R.id.adView);
mAdView.setAdSize(AdSize.BANNER);
mAdView.setAdUnitId("youtAdId");
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
WebView mWebView = null;
mWebView = (WebView) findViewById(R.id.webview);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.setWebViewClient(new WebViewClient());
mWebView.loadUrl("http://www.google.pt");

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM