如何在webView应用中显示非页内广告?

时间:2017-05-30 05:48:47

标签: android webview admob interstitial

我想在我的webview Android应用上展示插页式广告,但我无法实现它。

  • 我有一个完全在线的webview应用程序,没有离线页面或任何按钮或菜单。

  • 我不想在启动或关闭应用时显示插页式广告。

  • 当用户使用该网页浏览应用浏览我的网站时,应显示广告。
  • 我想在x分钟后使用插页式广告,但是我在herehere的x分钟后学习了插页式广告。
  • 然后我如何在我的应用上显示插页式广告,我没有任何按钮或菜单,只有一个网站可以浏览。
  • 请建议我如何在我的网页视图应用中使用插页式广告。
  • 我尝试并成功实施了BANNER广告。借助stackoverflow问答和Google(下面给出的代码),但无法以任何方式实施插页式广告
  • 我在这个领域非常新,所以请告诉我详细的流程意味着放置代码等等。

activity_main.xml中

 <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.xxxx.yyyyy.MainActivity"
    android:layout_gravity="center"
    android:id="@+id/fl">

    <WebView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/wv"/>
    <ProgressBar
        android:id="@+id/progressBar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />


    <com.google.android.gms.ads.AdView
        android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_alignParentBottom="true"
        ads:adSize="BANNER"
        ads:adUnitId="ca-app-pub-xxxxx/xxxxxx">
    </com.google.android.gms.ads.AdView>
</RelativeLayout>

Mainactivity java

import com.google.android.gms.ads.AdListener;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.InterstitialAd;
import com.google.android.gms.ads.MobileAds;

MobileAds.initialize(this, "xxxxxx~xxxxxx");
        AdView adView = (AdView)findViewById(R.id.adView);

        AdRequest adRequest = new AdRequest.Builder()
                .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
                .addTestDevice("xxxxxxx")
                .build();
        adView.loadAd(adRequest);

使用firebase(build.gradle)

compile 'com.google.firebase:firebase-ads:10.2.6'

3 个答案:

答案 0 :(得分:0)

您可以选择的最佳选择是将webview客户端设置为webview,并在用户使用shouldOverrideUrlLoading方法打开某个特定网址时加载广告

 mWebView.setWebViewClient(new WebViewClient() {

   @Override
 public boolean shouldOverrideUrlLoading(WebView view, String urlNewString)     {

 //urlNewString is  url for loading Ad then load Ad

return false;
}

@Override
public void onPageStarted(WebView view, String url) {

    }

});

答案 1 :(得分:0)

是的,您可以在Android WebView中使用JavascriptInterface点击按钮时显示来自您的网络应用的插页式广告。

  1. 首先将addJavascriptInterface添加到您的webview中。
  2. 为JavascriptInterface创建一个calss
  3. 创建一个显示广告的方法&#34; showAd()&#34;你内心的活力
  4. 在javascriptInterface类中创建一个方法,然后调用showAd()来显示广告。
  5. 供参考,请参阅此How to call admob Interstitial ad from android webview JavascriptInterface

答案 2 :(得分:0)

在活动上显示webview使用android生命周期:-)。当你最小化你的应用时,互联网广告将加载,当应用将被打开时,广告将显示。下面是我在我的应用中以这种方式展示广告的例子....希望这有帮助

@Override
protected void onDestroy() {
    super.onDestroy();


}

@Override
protected void onStop() {
    super.onStop();
  loadads(); 

}

@Override
protected void onResume() {
    super.onResume();
   showads();   
}

@Override
protected void onPause() {
    super.onPause();

}