美文网首页
2018-11-12 android 9.0 兼容问题

2018-11-12 android 9.0 兼容问题

作者: Wings6 | 来源:发表于2018-11-12 11:10 被阅读824次

主要解决9.0的网络问题

客观来看,9.0兼容好像问题不是很大吧,有些新APP一点问题都没有,但是有些比较旧的APP就问题比较多了,下面简单写一下解决方法,本文纯属笔记,方便以后查看:

问题一

应对9.0 版本的网络明暗流量问题

设置一下 application (清单文件里面)

         <application
              android:usesCleartextTraffic="true" 
                    >

问题二

还有 类似这两个报错的时候

            java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/commons/logging/LogFactory;

            Caused by: java.lang.ClassNotFoundException: Didn't find class                
            "org.apache.commons.logging.LogFactory" on path: DexPathList[[zip file 
              "/data/app/com.inno.nestlesuper-
             oPFXtK6GZQsOCWb8lvmj2g==/base.apk"],nativeLibraryDirectories=
               [/data/app/com.inno.nestlesuper-oPFXtK6GZQsOCWb8lvmj2g==/lib/arm, 
             /data/app/com.inno.nestlesuper-oPFXtK6GZQsOCWb8lvmj2g==/base.apk!/lib/armeabi, 
              /system/lib, /vendor/lib]]

这两句

主要问题是 9.0版本 谷歌大佬不支持这两个网络包了 要自己导进去支持来规避兼容问题,当然你没用到这两个网络包可以直接无视这里了。

我这里用的是 这两个 // 9.0版本好像不能再使用这两个了

           compile files('libs/httpclient-4.2.5.jar')
           compile files('libs/httpclient-cache-4.2.5.jar')

然后 解决方法如下:
导入一个commons-logging-api-1.0.4.jar

               compile files('libs/commons-logging-api-1.0.4.jar')

// 还有这个配置

                 android{
                   useLibrary 'org.apache.http.legacy'
                  }

还有一些第三方接入的问题,个人建议都用网络包吧,用实体jar久了会出现各种奇奇怪怪的问题,一般官方会给你更新的,记得用最新的就可以了

并不是所有APP 都会出现这些问题的,就看APP 是否用到这个网络包吧

相关文章

网友评论

      本文标题:2018-11-12 android 9.0 兼容问题

      本文链接:https://www.haomeiwen.com/subject/fjpqfqtx.html