我正在将admob整合到我完美运行的Android应用中。 我设法让我的Jelly Bean(4.1.2)手机正常工作,但应用程序在我的蜂窝平板电脑(3.2)上崩溃并显示消息
java.lang.NoClassDefFoundError:android.net.http.HttpResponseCache
不确定是否相关但在我的清单文件中我设置了我的minSdkVersion =" 9"
我似乎无法在Google上找到相关问题。 谁看过这个吗?可能是什么原因?
编辑:libs文件夹中没有文件。一切都是使用gradle设置的。
我的清单文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="foo.bar.results"
android:versionCode="6"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="9"
android:targetSdkVersion="19" />
<application
android:icon="@drawable/bar"
android:label="@string/app_name" >
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<activity
android:name=".bar"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.google.android.gms.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
android:theme="@android:style/Theme.Translucent" />
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
</manifest>
答案 0 :(得分:4)
这似乎是(又一个)但是在Google Play服务中。对于此问题,我们在Android 3.2上有176个崩溃报告,因此问题不在于您的代码。
以下是Google AdMob论坛中报告的问题: http://goo.gl/hNdiVo
答案 1 :(得分:2)
这似乎是9月25日许多人开始的错误。谷歌已承诺将在下周内更新以解决此问题。
最重要的是,这归结为android文档中的一个错误。 Android SDK中的HttpResponseCache表示它在API 13中可用,但似乎API 13实际上并不支持HttpResponseCache,而是你必须转到API级别14来获得它的支持。所以有人在没有正确检查的情况下发布了API 13的构建更改,依赖于Android SDK文档是正确的。
目前,最好的办法是做这样的事情:
try {
adView.loadAd(builder.build());
} catch (NoClassDefFoundError ex) {}
答案 2 :(得分:-2)
只需从Android SDK Manager更新您的google-play-services即可。之后重启IDE,并清理项目。它有效。