今天不知怎的,把Android studio升级到了4.2,gradle版本6.5,gradle插件版本4.0.1(因为Android studio4.0+构建低版本gradle插件时引用第三方库会报错unexpected element <queries> found in <manifest>,我引用的是广告的sdk中报错。)
打开原来的项目真是一顿操作,各种兼容性,库的版本号 一通改,build成功后运行时还是出现了异常:
Caused by: java.lang.ClassNotFoundException: Didn't find class "org.apache.commons.logging.LogFactory" on path: DexPathList[[zip file "/data/app/com.anybeen.mark.app-Alo9oQfQwwJ9uJY7QN23VA==/base.apk"],nativeLibraryDirectories=[/data/app/com.anybeen.mark.app-Alo9oQfQwwJ9uJY7QN23VA==/lib/arm, /data/app/com.anybeen.mark.app-Alo9oQfQwwJ9uJY7QN23VA==/base.apk!/lib/armeabi, /system/lib, /product/lib]]
网上找了一圈有说添加依赖库:"commons-logging:commons-logging:1.2"。但是测试发现还是不行。
最后在清单文件AndroidManifest.xml中直接添加库的引用,亲测有效
<uses-library android:name ="org.apache.http.legacy" android:required ="false"/>