2015-01-04 359 views
5

我有一个新的admob的问题。GooglePlayServices AdMob问题:“无法加载广告:0”

这里是我的代码,试图创造,在我的主要活动加载广告:

private void createAndLoadAd(String adUnitID, RelativeLayout rlRoot, View upperView){ 
    adView = new AdView(this); 
    adView.setAdUnitId(adUnitID); 
    adView.setAdSize(AdSize.BANNER); 
    adView.setId(R.id.ad_view); 

    RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(AdView.LayoutParams.WRAP_CONTENT, AdView.LayoutParams.WRAP_CONTENT); 
    params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); 
    params.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE); 

    rlRoot.addView(adView, params); 

    RelativeLayout.LayoutParams upperViewParams = (RelativeLayout.LayoutParams) upperView.getLayoutParams(); 
    upperViewParams.addRule(RelativeLayout.ABOVE, R.id.ad_view); 
    upperView.setLayoutParams(upperViewParams); 

    AdRequest adRequest = new AdRequest.Builder().build(); 
    adView.loadAd(adRequest); 
    checkGooglePlayServices(this); 
} 

我有一个RelativeLayout的在我的XML,而我试图将广告放置只是一个ExpandableListView以下(唯一的孩子)。

这里是我所得到的:

W /广告:有取得广告响应的问题。错误代码:0 W /广告:

无法加载广告:0

我精确的,我有我的AndroidManifest.xml中所需的所有权限:

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

<meta-data android:name="com.google.android.gms.version" 
       android:value="@integer/google_play_services_version" /> 

<activity android:name="com.google.android.gms.ads.AdActivity" 
       android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" 
       android:theme="@android:style/Theme.Translucent" /> 

这里是gradle这个行:

compile 'com.google.android.gms:play-services:6.+' 

,我读了错误可能来自adUnitId设置,我试图重新建立一个新的,但没有奏效。

也许有一些新的规则,如果应用程序没有在市场上发布,广告将无法正常工作?

下面是关于这个问题的日志:

01-31 09:48:37.687 19580-19580/me.frozened.rappel I/Ads﹕ Starting ad request. 
01-31 09:48:37.872 19580-19580/me.frozened.rappel E/﹕ file /data/data/com.nvidia.NvCPLSvc/files/driverlist.txt: not found! 
01-31 09:48:37.872 19580-19580/me.frozened.rappel I/﹕ Attempting to load EGL implementation /system/lib//egl/libEGL_tegra_impl 
01-31 09:48:37.887 19580-19580/me.frozened.rappel I/﹕ Loaded EGL implementation /system/lib//egl/libEGL_tegra_impl 
01-31 09:48:37.912 19580-19580/me.frozened.rappel I/﹕ Loading GLESv2 implementation /system/lib//egl/libGLESv2_tegra_impl 
01-31 09:48:40.767 19580-19580/me.frozened.rappel W/KeyCharacterMap﹕ Load KCM of non-default device may incur unexpected result 
01-31 09:48:48.217 19580-19617/me.frozened.rappel W/Ads﹕ There was a problem getting an ad response. ErrorCode: 0 
01-31 09:48:48.222 19580-19580/me.frozened.rappel W/dalvikvm﹕ VFY: unable to resolve virtual method 3114: Landroid/webkit/WebView;.evaluateJavascript (Ljava/lang/String;Landroid/webkit/ValueCallback;)V 
01-31 09:48:48.302 19580-19833/me.frozened.rappel W/﹕ init htc webcore 
01-31 09:48:48.337 19580-19580/me.frozened.rappel W/Ads﹕ Failed to load ad: 0 

编辑:

的问题似乎不是孤立的。我做了很多测试,从我的十个测试中,只有两个测试。我不明白,也许新的admob工作不好?

我测试过的设备上的这些应用程序:

  • HTC One X的< - 不工作(日志是这样)
  • 的Nexus 5 < - 工作
  • 三星Galaxy Note 10.1 < - 不工作
  • Sasmung Galaxy Ace < - 不能正常工作
  • Samsung Galaxy Note 3 < - Not工作
  • 索尼的Xperia Z^< - 工作
  • 三星Galaxy阿尔法< - 不工作
  • 三星Galaxy S3 < - 有些论文的手机使用的是最新版本的谷歌播放服务(不工作

我的HTC One X,我的Nexus 5,Galaxy Note 3)。我不知道其他的。

下面是我测试了两个应用程序: - Rappel < - 第一个有问题的应用程序 - My Word Book < - 一个旧的应用程序的人我敢肯定,广告 工作过 - BMI < - 在同样情况的朋友应用

所以我有两个假设:要么我测试这些应用程序的手机谁工作不好(我会相信它......),或者有一些权限/我忘了添加的代码。

另外,我的HTC One X没有SIM卡(我只使用互联网)。这可能是这款手机的问题吗?

+0

您提供了哪些adUnitId?并发布完整的logcat – William 2015-01-05 20:23:07

+0

我还没有找到这款手机的任何解决方案。所以我用一个新手机试了我的应用程序,它没有添加任何东西。我正在使用新手机来调试我的手机,但知道这个问题是特定于我的手机还是更大规模会很酷。 – FR073N 2015-01-28 13:16:59

+0

因此,从手机发布logcat – William 2015-01-28 22:21:56

回答

2

其实,我的代码是正确的&我在我的android有一个更新的谷歌播放服务库。我的admob帐户是新的横幅&国际编码的

它自动得到修复&等待1-2天后开始获得广告响应。从那时起,一切运作良好。如果你是一个定制ROM的CyanogenMod,它不会与谷歌应用程序(G-应用)像Play商店,Gmail中,默认情况下

+0

我会在手机上试用它。我的帐户已有两年历史,但也许有更新解决了此问题。 – FR073N 2015-05-19 09:16:10

+0

已投票...让我们现在等待一段时间 – 2016-07-19 01:58:28

+0

再次让患者工作:)在给出错误之前(0和3)。但几分钟后开始工作。 [p。我遵循新的Firebase广告指南] – 2016-07-19 02:09:33

0

也会发生这种情况。

所以你必须:

  1. 下载相应的GAPPS包为您的操作系统从this wiki
  2. 将其闪烁。 Instructions to flash if you don't know how
  3. 打开Play商店应用。它会要求您使用您的Google帐户登录。
  4. 然后更新谷歌Play服务的应用

如果你正确地完成编码,现在应显示广告。

1

在我来说,我忘了使用

.addTestDevice("1C51F744DXXXXXXXX64F06586C84EF")

你会得到你的设备ID在日志中。

+0

就是这样!这是我的情况的问题! – 2017-08-02 15:18:01