首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在网页加载后加载Admob interstitial?

如何在网页加载后加载Admob interstitial?
EN

Stack Overflow用户
提问于 2017-05-16 18:36:43
回答 2查看 446关注 0票数 1

我是Android开发的新手。我有一个Web视图应用程序。我当前的代码Admob interstitial只加载一次。有人能帮我在网页加载后如何设置Admob Interstitial load吗?

代码语言:javascript
复制
      AdRequest adRequest = new AdRequest.Builder().build();

            // Prepare the Interstitial Ad
            interstitial = new InterstitialAd(MainActivity.this);
// Insert the Ad Unit ID
            interstitial.setAdUnitId(getString(R.string.admob_interstitial_id));

            interstitial.loadAd(adRequest);
// Prepare an Interstitial Ad Listener
            interstitial.setAdListener(new AdListener() {
                public void onAdLoaded() {
// Call displayInterstitial() function
                    displayInterstitial();
                }

                public void displayInterstitial() {
// If Ads are loaded, show Interstitial else show nothing.
                    if (interstitial.isLoaded()) {
                        interstitial.show();
                    }
                }
            });
EN

回答 2

Stack Overflow用户

发布于 2017-05-16 18:52:01

以下是代码

代码语言:javascript
复制
   mWebView.setWebViewClient(new WebViewClient() {

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

     //web page loaded , show your interstitial

    }
});
票数 0
EN

Stack Overflow用户

发布于 2020-10-22 10:44:27

我也有同样的问题。这对我很有效(在Flutter中):

代码语言:javascript
复制
import 'package:firebase_admob/firebase_admob.dart';

InterstitialAd _interstitialAd;
bool _isInterstitialAdReady;

void prepAd(){
  initState();
  _loadInterstitialAd();
}

void runAd() {
  _interstitialAd.show();
}

void initState() {
  _isInterstitialAdReady = false;
  _interstitialAd = InterstitialAd(
    adUnitId: InterstitialAd.testAdUnitId,
    listener: _onInterstitialAdEvent,
  );
}


void _loadInterstitialAd() {
  _interstitialAd.load();
}
// TODO: Implement _onInterstitialAdEvent()
void _onInterstitialAdEvent(MobileAdEvent event) {
  switch (event) {
    case MobileAdEvent.loaded:
      _isInterstitialAdReady = true;
      break;
    case MobileAdEvent.failedToLoad:
      _isInterstitialAdReady = false;
      print('Failed to load an interstitial ad');
      break;
    case MobileAdEvent.closed:
      dispose();
      prepAd();
      break;
    default:
    // do nothing
  }
}

void dispose() {// TODO: Dispose InterstitialAd object
  _interstitialAd?.dispose();
}

一开始我只运行了一次prepAd(),然后在需要的时候只运行了runAd()。如果需要,可以在runAd()中检查_isInterstitialAdReady == true

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43999116

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档