背景
在做的一个APP项目,原来是在Android 7(N版本)上运行,一直没有问题
近期,设备升级到Android 10版本,在进行新设备适配时,出现了一系列问题。
其中一个问题,如下:
java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/message/BasicNameValuePair;
方法一
android {
defaultConfig {
// 1.加入这句话
useLibrary 'org.apache.http.legacy'
}
packagingOptions {
// 2.加入这句话
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
}
}
dependencies {
//3.加入这句话
api 'org.apache.httpcomponents:httpclient:4.4.1'
}
方法二
<application
...
>
<uses-library
android:name="org.apache.http.legacy"
android:required="false" />
</application>
于是,按照方法二修改了清单文件,解决了这个问题。
全部评论