BannerAd.testAdUnitID是否过时?添加Banner Ad遇定义未找到报错求助
是的,testAdUnitID已经在新版Google Mobile Ads Flutter SDK中被废弃并移除,这就是你遇到报错的原因。
解决方法
直接使用官方提供的测试广告单元ID字符串替代即可,横幅广告的官方测试ID为:ca-app-pub-3940256099942544/6300978111
修改后的代码如下:
void _initBannerAd() { _bannerAd = BannerAd( size: AdSize.banner, adUnitId: 'ca-app-pub-3940256099942544/6300978111', listener: BannerAdListener( // 可选:添加广告状态回调,方便监控加载情况 onAdLoaded: (Ad ad) => print('Banner ad loaded.'), onAdFailedToLoad: (Ad ad, LoadAdError error) { ad.dispose(); print('Banner ad failed to load: $error'); }, ), request: AdRequest(), ); }
补充说明
- 不同类型广告(插屏、原生、激励视频等)的测试ID均可在Google官方文档中获取,测试ID仅用于开发调试,正式上线前必须替换为你在AdMob后台创建的正式广告单元ID。
- 不建议使用空实现的
BannerAdListener(),添加必要的回调能帮助你快速排查广告加载异常问题。
内容的提问来源于stack exchange,提问作者Saad Mansoor
相关产品推荐
相关产品推荐

