添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
坚强的铁板烧  ·  Duilib - ...·  1 年前    · 
忐忑的领带  ·  CSS - ...·  1 年前    · 

Admob Banner广告无法加载,错误代码。3 没有填充

3 人关注

I've integrated admob Banner & Interstitial in my app. I've noticed that some of ads banner are fail to load. I've debug error code when ads fail to load, Error code is common Error : 3 这意味着 No fill 错误。 我已经在3-4个屏幕上添加了横幅广告和插播广告。
现在的问题是,只有一个屏幕上的横幅ID在运行,所有的间歇性工作都很好,但有些横幅不工作。 (in notch screen) .
当我把所有屏幕的横幅ID换成正常运行的时候,所有的屏幕都能正常工作,缺口屏幕也是如此。
我已经在nougat、oreo、marshmello等系统中测试了这个案例。正常屏幕和凹槽屏幕。
我刚刚注意到,一些使用凹槽屏幕的设备无法加载所有广告。但所有正常的屏幕都工作正常。所以我不能得到确切的问题。
注意:我在测试时,所有设备都运行在同一个wifi网络中。
我不知道其他单位的ID是否有问题。但在我的Admob账户中,所有单元ID都有相同的设置。根据我的测试案例,我的AdUnit id出了问题。但我不知道问题出在哪里。
我注意到还有一种情况。如果我在请求中加入测试ID,那么它也可以工作。我从安卓日志中得到了设备哈希值。

I/Ads: Use AdRequest.Builder.addTestDevice("XXXXXXXXXX") to get test ads on this device.
.addTestDevice("XXXXXXXXXX")


如果有任何额外的调试技术,请与我分享,以便我可以详细检查。 有没有人可以帮助我详细检查这个问题?如果有人需要更多的解释,请评论。

android
admob
ads
banner
Bhavin Chauhan
Bhavin Chauhan
发布于 2018-11-16
4 个回答
Swanand Keskar
Swanand Keskar
发布于 2020-11-20
已采纳
0 人赞同
public static final int ERROR_CODE_NO_FILL

该广告请求成功,但由于缺乏广告库存,没有返回广告。.

恒定值。3

来源:文件 https://developers.google.com/android/reference/com/google/android/gms/ads/AdRequest#ERROR_CODE_NO_FILL

你的代码没有问题,问题是Admob并不总是有Ad来返回你的请求。 可能的原因可能是

-你刚刚注册了你的发布者ID,因为它需要一些时间来开始提供广告。

-你已经过滤了一些广告

谢谢你的回答。我已经阅读了该文件。根据你的建议,1)我没有注册为出版商。2) 是的,我已经过滤了类别,但它应该是针对所有单位的ID,而不是特定的ID。所以我不明白为什么只有一个ID在正常运行。
这可能是尺寸问题,因为它在不同的布局中,确保没有任何东西重叠的观点,检查这也可能有帮助。 support.google.com/adsense/answer/6191405?hl=en
这可能是尺寸问题,因为它在不同的布局中,确保没有任何东西重叠的观点,检查这个也可能有帮助。 support.google.com/adsense/answer/6191405?hl=en
没有大小问题。我已经说过,当我把那个运行的ID换成其他屏幕时,它也能正常工作。
当在所有的屏幕上使用运行的ID时,所有的屏幕都会加载横幅广告。因此,这意味着有东西在监视广告商账户中的那个ID。
Bhavin Chauhan
Bhavin Chauhan
发布于 2020-11-20
0 人赞同

我试着把运行不同操作系统的设备组合在一起。最后我得到了解决方案。 当应用程序以错误代码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> 

现在,根据谷歌示例代码 I've to use width with match_parent所以我把宽度改成了match_parent仍然发生同样的错误。所以最后我把尺寸类型改成了广告牌 and now it run in all devices. (Google's demo code use 广告牌 type) I just tried this size and now all devices run ads banner. Not sure but as per my testing scenario ad was fail which device have large resolution (More than 16:9 ratio like 19:9 ratio 1080 x 2280 pixels) and After Set Banner size type as 广告牌在大分辨率下也能正常工作。

Norbert
Norbert
发布于 2020-11-20
0 人赞同
  • 检查并确保你没有像我一样把两个账户连接到adsense上,我就错了。

  • 如果您刚刚创建了您的Admob账户,请等待24小时并再次尝试。

  • 共享编辑删除标志

    Claudiu Razlet
    Claudiu Razlet
    发布于 2020-11-20
    0 人赞同