are*_*ser 8 admob dart flutter
我目前正在尝试使用firebase_admob插件中的横幅广告.显示和处理它们的过程非常简单,我在initState()和dispose()中进行.
创建和显示添加的代码如下所示:
_bannerAd = createBannerAd();
_bannerAd
..load().then((loaded) {
if (loaded) {
_bannerAd..show();
}
});
Run Code Online (Sandbox Code Playgroud)
但是,由于我正在异步调用show(),因此在显示广告时(即通过快速单击后退按钮)视图可能已经关闭.在这种情况下,将永远不会调用dispose()方法,并且广告将"卡在"屏幕底部.
我怎么解决这个问题?我是否使用横幅广告错误,或者是否可以检测视图是否已更改?我尝试使用州的"已安装"属性,但它似乎不起作用.
只需在显示添加之前检查状态类的“this.mounted”属性即可。
_bannerAd = createBannerAd();
_bannerAd
..load().then((loaded) {
if (loaded && this.mounted) {
_bannerAd..show();
}
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
942 次 |
最近记录: |