Android Http

Android 明文通讯

Android 使用HTTP明文通信

对于自己的测试用网站 弄个SSL证书也是比较麻烦 所以使用HTTP明文通信

但 Android8.1 之后 默认关闭明文通信

Starting with Android 9 (API level 28), cleartext support is disabled by default.

创建 network_security_config 配置

创建文件 res/xml/network_security_config.xml

下列两个配置任选一个

指定通行域名

指定域名

1
2
3
4
5
6
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="true">
        <domain includeSubdomains="true">api.example.com(to be adjusted)</domain>
    </domain-config>
</network-security-config>

全域通行

1
2
3
4
<network-security-config>
    <base-config cleartextTrafficPermitted="true">
    </base-config>
</network-security-config>

更改 AndroidManifest

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
<?xml version="1.0" encoding="utf-8"?>
<manifest android:targetSandboxVersion="1"
    ...>
    <uses-permission android:name="android.permission.INTERNET" />
    <application
        ...
        android:networkSecurityConfig="@xml/network_security_config"
        android:usesCleartextTraffic="true"
        ...>
        ...
    </application>
</manifest>

参考

Built with Hugo
主题 StackJimmy 设计