如何检查Unity游戏中Admob广告是否正确接入?
编辑器中显示“This is a test SmartBanner”属于Admob Unity插件的正常模拟测试行为,不代表正式环境的配置正确。
接入正确性排查步骤
1. 后台&配置检查
- 确认打包时已将测试广告ID全量替换为Admob后台申请的正式应用ID、对应Android平台的横幅广告单元ID,无测试ID残留
- 核对Admob后台对应广告单元状态为已启用,无账户/单元限制、封禁、待审核提示;新创建的广告单元通常需要数小时的冷启动时间才可正常返回广告
- 确认Google Play后台的应用广告声明已正确填写(应用是否包含广告选项选「是」),应用已通过合规审核,无广告相关政策限制
- 核对打包使用的包名、keystore签名文件,与Admob后台绑定的应用包名、Google Play后台上传应用的包名/签名完全一致,签名不匹配会直接导致广告请求被拒绝
2. 代码逻辑检查
- 确认正式打包时已关闭测试模式,移除/注释
Ad.TestMode = true这类测试模式配置代码 - 在广告的请求、加载、失败、展示回调中添加日志,打包debug版本安装到本地安卓设备,通过Logcat查看
OnAdFailedToLoad回调返回的错误码定位问题:- 错误码0/3:广告请求成功但无填充,属于正常情况,可更换测试设备、网络环境后重试,上线初期无填充概率较高
- 错误码1:配置错误,重新核对广告ID、应用ID的配置正确性
- 错误码2:网络异常,检查设备网络是否正常,是否有代理、防火墙拦截广告请求
- 确保仅在广告加载完成的回调触发后再调用展示方法,不要在发起广告请求的同时直接调用
Show(),避免广告未加载完成无法展示
3. 打包环境检查
- 确认Admob依赖无缺失、无冲突:在Unity的
Player Settings > Publishing Settings > Build中勾选自定义主Gradle模板,检查生成的gradle文件是否包含Admob的依赖声明,未自动导入的可手动补充 - 确认安卓Target SDK版本满足Admob最低要求(API等级≥21)
- 排查其他第三方插件是否与Admob存在冲突,尤其是修改安卓清单文件配置的广告SDK、合规SDK,避免广告服务初始化被拦截
内容的提问来源于stack exchange,提问作者Mohab Mohamed
相关产品推荐
相关产品推荐

