【问题标题】:Adwhirl with Admob java.lang.NosuchMethodError:com.google.ads.AdView.destroyAdwhirl 与 Admob java.lang.NosuchMethodError:com.google.ads.AdView.destroy
【发布时间】:2011-12-08 15:58:57
【问题描述】:

我正在将 adwhirl 与 admob 一起使用。广告出现但我在日志中收到此异常 java.lang.NosuchMethodError:com.google.ads.AdView.destroy 我不明白为什么.. 我在我的活动中使用 adwhirl 布局来请求广告..

LinearLayout adLayout = (LinearLayout) findViewById(R.id.ads);
AdWhirlLayout adWhirlLayout = new AdWhirlLayout(this, "---------");
RelativeLayout.LayoutParams adWhirlLayoutParams = new 
    RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT,
                                LayoutParams.WRAP_CONTENT);
adLayout.addView(adWhirlLayout, adWhirlLayoutParams);
adLayout.invalidate();

我只是使用其他 AdNw 的 SDK,在清单中声明它们 这是请求广告的正确方式吗???

【问题讨论】:

    标签: android admob adwhirl


    【解决方案1】:

    AdMob 适配器在被销毁时会调用 destroy 方法。如果您的应用中包含 AdMob SDK,则该方法应该存在。确保您拥有最新版本 (4.3.1) 的 Google AdMob SDK 并且您已将其包含在您的应用中。

    另外,这是您在清单中声明 AdMob 的 AdActivity 的方式吗?

    <activity android:name="com.google.ads.AdActivity"
       android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
    

    最后,我不知道它是否与此问题有关,但您定义了一些 RelativeLayout 参数,但您将其添加到 LinearLayout。您根本不需要指定这些参数。这应该足够了:

    LinearLayout adLayout = (LinearLayout) findViewById(R.id.ads);
    AdWhirlLayout adWhirlLayout = new AdWhirlLayout(this, "YOUR_ADWHIRL_KEY_GOES_HERE");
    adLayout.addView(adWhirlLayout);
    

    【讨论】:

    • 非常感谢..我现在使用 4.3.1 但出现此错误:com.google.ads.Ads.AdActivity 的 android:configChanges 值必须包括 screenSize。 com.google.adsAdActivity 的 android:configChanges 值必须包含 SmallestscreenSize。我该怎么办??
    • 查看这篇博文 (googleadsdeveloper.blogspot.com/2011/11/…),了解如何使用 4.3.1 版。
    • 非常感谢 Eric ..现在 admob 为我工作 ..:) 但我想使用带有 adwhirl 和 admob 的其他广告网络,但我不知道我是否必须这样做..
    • 添加 AdMob 给您带来了一些麻烦,因为清单定义在最新的 SDK 中发生了变化。其他广告网络应该很容易包含在内。只需添加他们的库文件,添加他们需要的清单活动定义,然后从他们的站点获取一个 ID 并在 AdWhirl UI 中进行配置。是否有任何其他网络特别您在添加时遇到问题?
    • 我使用了 zest,Millineal Media 和 Mdotm zest 还可以,但是 Millineal Media 一直在显示大广告,并且 mdotm 减慢了我的应用程序,无论如何我只是把他们的 SDk 放在清单中,如你所说,并且我在上面使用了相同的代码,但是我想问你一些事情,当我使用 admob 时,我必须输入 target=android-13 并且在清单中我输入了 min Sdk =8 我可以保证它适用于所有 android 设备(2.2 和以上)
    猜你喜欢
    • 2011-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多