为什么Google Admob广告没有显示(java.lang.NoSuchFieldError:AdsAttrs)?

时间:2015-06-07 18:00:00

标签: android admob

我之前播放过广告,但我不明白为什么它现在没有投放。

我在xml

中收到以下错误
java.lang.NoSuchFieldError: AdsAttrs
at com.google.android.gms.ads.internal.client.zzj.<init>(Unknown Source)
at com.google.android.gms.ads.internal.client.zzy.<init>(Unknown Source)
at com.google.android.gms.ads.internal.client.zzy.<init>(Unknown Source)
at com.google.android.gms.ads.internal.client.zzy.<init>(Unknown Source)
at com.google.android.gms.ads.AdView.<init>(Unknown Source)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

这是我的xml代码

 <RelativeLayout
    android:id="@+id/adslayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:background="@color/black">
    <com.google.android.gms.ads.AdView
        android:id="@+id/ads"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        ads:adSize="SMART_BANNER"
        ads:adUnitId="xxxxxxxxxxx" />
</RelativeLayout>

在活动中我将其称为

AdRequest adRequest = new AdRequest.Builder()
            .build();
    mAdView = new AdView(this);
    mAdView.setAdSize(AdSize.SMART_BANNER);
    mAdView.setAdUnitId("--------
    mAdView.loadAd(adRequest);
    adslayout.addView(mAdView);

2 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。如果您使用firebase,请检查您的模块应用程序。首先检查依赖项中的编译版本。例如, 'com.google.firebase:firebase-database:10.0.1' 编译'com.google.firebase:firebase-ads:9.0.0' 。您将收到上述错误,但问题将解决如下。的 编译 'com.google.firebase:firebase-database:10.0.1'com.google.firebase:firebase-ads:10.0.1

答案 1 :(得分:0)

对于遇到相同问题的任何人,如果谷歌的编译版本之间没有不兼容性,请检查您的gradle模块应用。我刚刚解决了我的问题,删除了一个应用程序索引的编译,导致与firebase的编译不兼容注意:那个编译对我来说没用,这就是为什么我删除它,否则我只是想尝试改变编译成相同的版本,希望这个帮助。 (抱歉没有任何英语课程的英语巴西人)