Flutter应用测试广告无法展示问题求助(附运行日志)
测试广告无法展示的问题排查方案
首先先把你提供的运行日志格式化出来:
I/Ads (10681): This request is sent from a test device. W/ConnectionStatusConfig(10681): Dynamic lookup for intent failed for action: com.google.android.gms.ads.service.CACHE W/ConnectionStatusConfig(10681): Dynamic lookup for intent failed for action: com.google.android.gms.ads.service.START I/Ads (10681): This request is sent from a test device. I/AdCheck (10681): APS: blockAdView! I/Ads (10681): This request is sent from a test device. W/Ads (10681): Not retrying to fetch app settings W/Ads (10681): Not retrying to fetch app settings I/DynamiteModule(10681): Considering local module com.google.android.gms.ads.dynamite:0 and remote module com.google.android.gms.ads.dynamite:224400003 I/DynamiteModule(10681): Selected remote version of com.google.android.gms.ads.dynamite, version >= 224400003 I/flutter (10681): Android 7.0 (SDK 24), HUAWEI EVA-L19 I/art (10681): Do full code cache collection, code=101KB, data=123KB I/art (10681): After code cache collection, code=97KB, data=83KB
接下来咱们逐个分析关键日志条目,给出对应的排查和解决步骤:
1. 核心问题:APS拦截了广告视图
日志里的I/AdCheck (10681): APS: blockAdView! 是最直接的线索——APS(广告防护服务类组件)直接阻止了广告视图的加载。你可以这么排查:
- 检查你的应用是否集成了广告安全/拦截类的SDK或模块,确认是否有配置规则误拦截了测试广告请求;
- 如果是第三方的APS服务,暂时关闭该服务,测试广告是否能正常展示,以此确认是不是拦截规则的问题;
- 检查APS的配置项,看看是否把测试广告的请求域名或标识加入了拦截名单。
2. Google Play服务组件查找失败
日志里两次出现Dynamic lookup for intent failed for action: com.google.android.gms.ads.service.CACHE/START,说明Google广告服务的核心组件调用失败,这会影响广告的正常加载:
- 先更新设备上的Google Play服务到最新版本,日志里显示系统选择了远程的dynamite模块版本224400003,本地版本为0,版本差异过大可能导致兼容性问题;
- 你的设备是华为Android7.0机型,老版本华为设备的GMS服务可能存在兼容性缺陷,建议在华为应用市场安装/更新GMS核心服务,或者确认设备是否支持完整的GMS功能;
- 检查你应用中集成的Google Ads SDK版本,确保它和设备上的GMS服务版本兼容,优先使用最新稳定版的Ads SDK。
3. 其他辅助排查点
- 虽然日志显示是测试设备,但可以重新确认AdMob测试广告ID的配置是否正确,有没有拼写错误;
- 清除应用的缓存和数据,重启应用后再测试,缓存异常也可能导致广告服务调用失败;
- 确认设备网络连接稳定,测试广告需要正常访问Google的广告服务地址,避免网络限制导致请求失败。
内容的提问来源于stack exchange,提问作者fayzo bngsh
相关产品推荐
相关产品推荐

