Android 9.0 网络请求问题的四种解决方法

Android 9 (API 28)或以上的Android设备上,要求使用HTTPS进行网络请求。那么如何解决这种问题呢?大致可以从四个方面来解决:
1. 使用https请求
2. targetSdkVersion 降到27或以下
3. 使用network_security_config.xml配置文件
在res目录下新建一个xml目录,然后在xml目录里创建network_security_config.xml 文件,内容如下:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
   // 允许明文传输
   <base-config cleartextTrafficPermitted="true" /> 
</network-security-config>

然后,通过App的AndroidManifest.xml文件下的application标签的networkSecurityConfig属性引用配置文件network_security_config.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
    <application android:networkSecurityConfig="@xml/network_security_config"
                    ... >
        ...
    </application>
</manifest>

4.设置application标签的usesCleartextTraffic属性为true

<application
        android:usesCleartextTraffic="true"
        ...
        >
        ...
    </application>

谢谢阅读。

你可能感兴趣的:(Android问题)