我一直试图在我的应用运行时期间多次显示插页式广告。我已阅读有关它的admob文档,它似乎是一次性使用的对象,我想知道是否有任何解决方法。任何帮助将不胜感激。感谢
答案 0 :(得分: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()