我正在使用Flutter的 firebase_admob 软件包来显示广告,它可用于非真实广告,它们会显示在应用程序上。另外,我还更新了 adUnitId ,以将广告集成到我的真实admob帐户中。

但是,当我想展示真实的广告时,我却不知道该怎么做。

MobileAdTargetingInfo targetingInfo = MobileAdTargetingInfo(
  keywords: <String>['game', 'words'],
  testDevices: <String>[],
);

BannerAd myBanner = BannerAd(
  adUnitId: "[here is my unit ID]",
  size: AdSize.smartBanner,
  targetingInfo: targetingInfo,
  },
);

void initState() {
    FirebaseAdMob.instance.initialize(appId: "[my admob ID]");
    super.initState();
}

因此,我应该在testDevices上写些什么,以便向真实用户展示广告而无需手动编写每个用户的设备ID?

最佳答案

我通过一些实验找到了答案。我将我的应用程序放置在Play商店中,效果很好,可以展示广告。

基本上,如果您要展示真实广告而不是测试广告,则让testDevices为null,请不要填充它。

并且不要忘记将来自AdMob帐户的真实单位ID设置为

adUnitId: "your unit ID",

最终代码应如下所示:
...
MobileAdTargetingInfo targetingInfo = MobileAdTargetingInfo(
  keywords: <String>['game', 'words'],
);

BannerAd myBanner = BannerAd(
  adUnitId: "your unit ID",
  size: AdSize.smartBanner,
  targetingInfo: targetingInfo,
  },
);
...

09-11 05:44