gpt4 book ai didi

Admob 横幅,如何仅在主页上显示

转载 作者:IT老高 更新时间:2023-10-28 12:32:40 32 4
gpt4 key购买 nike

我成功地在页脚上显示智能横幅,然后将其处理掉。我的问题是显示在应用程序的所有页面上。

我的问题是:如何只显示在一页上?

@override
void initState() {
super.initState();
myBanner
..load().then((loaded) {
if (loaded && this.mounted) {
myBanner..show();
}
});

}

最佳答案

我从 Github 链接 here 找到了可行的解决方案.这个想法很简单。

  1. 首先,您需要一个 Ads 助手类。您可以点击链接或查看下文。
  2. 在您要展示广告的页面的 initState() 内调用 showBannerAd
  3. 在推送页面后调用 showBannerAd,如下所示。这将在您从推送的页面返回后再次显示广告。
Navigator.push(context, MaterialPageRoute(builder: (context) => EditPage())).then((value) {
Ads.showBannerAd();
});
  1. 在您不想展示广告的推送页面上,在 initState() 内调用 hideBannanderAd。然后你就完成了。

我的广告助手类

import 'package:firebase_admob/firebase_admob.dart';

const String testDevice = 'YOUR_DEVICE_ID';

class Ads {
static BannerAd _bannerAd;

static void initialize() {
FirebaseAdMob.instance.initialize(appId: FirebaseAdMob.testAppId);
}

static const MobileAdTargetingInfo targetingInfo = MobileAdTargetingInfo(
testDevices: testDevice != null ? <String>[testDevice] : null,
keywords: <String>['foo', 'bar'],
contentUrl: 'http://foo.com/bar.html',
childDirected: true,
nonPersonalizedAds: true,
);

static BannerAd _createBannerAd() {
return BannerAd(
adUnitId: BannerAd.testAdUnitId,
size: AdSize.banner,
targetingInfo: targetingInfo,
listener: (MobileAdEvent event) {
print("BannerAd event $event");
},
);
}

static void showBannerAd() {
if (_bannerAd == null) _bannerAd = _createBannerAd();
_bannerAd
..load()
..show(anchorOffset: 0.0, anchorType: AnchorType.bottom);
}

static void hideBannerAd() async {
await _bannerAd.dispose();
_bannerAd = null;
}
}

关于Admob 横幅,如何仅在主页上显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50972863/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com