我已在我的应用程序中集成了 admob 横幅和插页式广告。我注意到一些广告横幅无法加载。我在广告加载失败时调试了错误代码,错误代码很常见 Error : 3 这意味着 No fill 错误。
我已在 3-4 个屏幕中添加了横幅广告和插页式广告。
现在的问题是,只有一个屏幕横幅 id 正在运行,所有插页式广告都工作正常,但有些横幅无法正常工作。 (在凹口屏幕中)。
当我更改所有屏幕横幅 ID 时,该 ID 运行正常,并且所有屏幕对于凹口屏幕也都可以正常工作。
我已经在牛轧糖、奥利奥、棉花糖等普通屏幕和凹口屏幕中测试了这种情况。
我只是注意到一些运行缺口屏幕的设备不会加载所有广告。但所有正常屏幕都工作正常。所以我无法得到确切的问题。
注意:当我测试时,所有设备都使用相同的 wifi 网络运行。
不知道其他单位id是否有问题。但所有单位 ID 在我的 Admob 帐户中都有相同的设置。根据我的测试用例,我的 AdUnit id 有问题。但无法弄清楚问题是什么。
我注意到另外一个案例。如果我在请求中添加了测试 ID,那么它也可以工作。我从 Android 日志中获取了设备哈希值。
I/Ads: Use AdRequest.Builder.addTestDevice("XXXXXXXXXX") to get test ads on this device.
.addTestDevice("XXXXXXXXXX")
如果有任何额外的调试技术,请与我分享,以便我可以详细检查。
任何人都可以帮我详细检查这个问题吗?如果有人需要更多解释,请评论。
public static final int ERROR_CODE_NO_FILL
广告请求成功,但由于广告库存不足没有返回任何广告。
常数值:3
您的代码没有任何问题,问题是admob并不总是有广告返回您的请求 可能的原因可能是
-您刚刚注册了发布商 ID,因为开始投放广告需要一些时间
-您已过滤掉一些广告
我尝试过运行不同操作系统的设备组合。最后我得到了解决方案。 当应用程序失败并出现错误代码 3(无填充错误)时,我编写了此代码
<com.google.android.gms.ads.AdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="SMART_BANNER"
ads:adUnitId="XXXXXXXXXXXXXXXX>
</com.google.android.gms.ads.AdView>
现在根据谷歌示例代码,我必须将宽度与match_parent一起使用,所以我用match_parent更改了宽度,但仍然发生了相同的错误。所以最后我用 BANNER 更改了 Size 类型,现在它在所有设备上运行。 (Google 的演示代码使用 BANNER 类型)我刚刚尝试了这个尺寸,现在所有设备都运行广告横幅。 不确定,但根据我的测试场景,广告失败的设备具有大分辨率(超过 16:9 比例,如 19:9 比例 1080 x 2280 像素),并且将横幅尺寸类型设置为 BANNER 后也可以在大分辨率下正常工作。
检查并确保您没有将两个帐户链接到 AdSense,就像我在我的案例中错误地做的那样。
如果您只是创建 Admob 帐户,请等待 24 小时,然后重试
分享编辑删除标志
我收到了完全相同的消息。问题是我使用了错误的测试广告单元 ID。正确的是
ca-app-pub-3940256099942544/6300978111
我提出了一些问题,我的解决方案是更改我的项目的包名称,在项目目录的 google-servise.json 中,我的页面名称是 com.example.erningapp,问题是有人正在使用这个包其原因是服务器上出现错误,请随时与我联系以获取更多详细信息[email protected]