Admob广告会在调试时加载,但不会在生产中加载

时间:2018-12-06 13:08:55

标签: android admob ads error-code

因此,我创建了adMob帐户并设置了所有正确的内容,Google向我发送了一封电子邮件,说明我的帐户已配置好并可以发布广告。
然后,我在我的应用程序上进行了配置,并通过在Android Studio上进行调试(而不是使用addTestDevice进行发布)对它进行了很好的测试-我知道我不应该这样做,但是我只是加载了它,因此可以确保它可以。
但是,当应用程序上传到生产环境并从那里安装应用程序时,它开始收到ERROR_CODE_NO_FILL错误(I / Ads:广告加载失败:3)。

我知道当adMob没有要发送的广告时会发生此错误,但是它如何在调试模式下而不是在生产环境下工作?

这是错误:

  

12-06 10:20:21.535 15899-15899 /? D / DynamitePackage:实例化com.google.android.gms.ads.ChimeraAdManagerCreatorImpl
  12-06 10:20:21.537 15899-15899 /? I / Ad:使用AdRequest.Builder.addTestDevice(“ 0DAAEFF66CB80E873C75B4912371F7BC”)在此设备上获取测试广告。
  12-06 10:20:21.611 17128-15073 /? W /广告:应用没有获得位置所需的权限
  12-06 10:20:21.663 17128-16126 /? I / Ad:SDK版本:afma-sdk-a-v14799021.14300000.1
  12-06 10:20:22.084 15899-15899 /? I / Ads:广告加载失败:3

这是我用来调用广告的代码,因为我在应用程序的其他片段/页面上使用它是静态的:

public static void adViewSetup(View mview){
    final AdView madView = mview.findViewById(R.id.adView);
    final AdRequest adRequest = new AdRequest.Builder()
            //.addTestDevice("9C1E05D53A952405B2A66A70E846F862")
            .build();
    madView.loadAd(adRequest);
}

这是我如何在onCreateView上调用addViewSetup的示例:

view = inflater.inflate(R.layout.main_home, container, false);
Home.adViewSetup(view);

这是我在xml布局中添加的示例:

<com.google.android.gms.ads.AdView
 android:id="@+id/adView"
 ads:adSize="BANNER"
 ads:adUnitId="@string/adId"
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:layout_centerHorizontal="true"
 android:layout_alignParentBottom="true"/>

解决方案

  

因此,解决方案是...等待中。
ERROR_CODE_NO_FILL(广告加载失败3)表示服务器正在响应,但您的帐户尚无正在构建的广告资源。似乎是在几个用户开始使用您的应用后创建此清单的,因此将广告请求发送到adMob服务器。
  对我来说,广告投入生产后需要2天才能开始展示。
  我希望这篇文章对像我一样有疑问的人有所帮助。

1 个答案:

答案 0 :(得分:0)

尝试使用其他设备不要在调试模式下安装