在我的应用运行时,我多次尝试显示插页式广告。我已经阅读了关于它的 admob 文档,它似乎是一个一次性使用的对象,我想知道是否有任何解决方法。任何帮助将不胜感激。谢谢
问问题
436 次
1 回答
0
我知道这个问题是大约 8 年前的问题,但我遇到了同样的问题。什么对我有用:
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()
在我需要的时候跑了。如果你愿意,你可以检查_isInterstitialAdReady == true
里面runAd()
于 2020-10-21T13:34:19.873 回答