首页 > 解决方案 > 在 Flutter 中使用 Admob 关键字的正确方法是什么?没有真正的广告

问题描述

尽管我的 AdMob 帐户已经过验证,但即使在已发布的应用程序上,我也没有收到任何类型的广告。

谁能检查我的代码并告诉我是否在任何地方做错了什么?当我写BannerAd.tesUnitId而不是我真正的横幅广告单元 ID 时,它会显示一些伪横幅广告,所以我想在实现它时没有错误。但是,当我编写我的 admob 横幅广告单元 ID 时,我收到了我没有使用 targetInfo 的消息,是这样吗?

W/flutter (26177): onAdFailedToLoad: 3
I/flutter (26177): BannerAd event is MobileAdEvent.failedToLoad

我将不胜感激任何帮助。

MobileAdTargetingInfo targetingInfo = MobileAdTargetingInfo(
);

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

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

标签: firebaseflutterdartadmob

解决方案


他们的代码没有错。你的实现是绝对正确的。

发生这种情况是因为谷歌缺乏广告。

我强烈建议添加目标信息以提高填充率,因为 Google 可以根据您的信息轻松展示广告。

错误代码 3:ERROR_CODE_NO_FILL 描述(开发文档链接):广告请求成功,但由于缺少广告资源,没有返回广告。

发生原因:广告商可以根据业务相关性定位特定区域、平台和用户资料,这有时会导致特定地区或用户资料的广告可用性较低。错误代码表明实施是正确的,并且由于在从应用程序发送广告请求的特定时刻缺乏合适的广告可用性,因此未满足广告请求。

对某些应用程序或广告单元的政策相关限制也将导致返回错误代码 3 以响应广告请求。

阅读更多:https ://support.google.com/admob/thread/3494603?hl=en


推荐阅读