android 9
关于网络
Android 9系统,http网络被限制无反应。https无影响
之前只需要清单文件里添加网络权限就可以
<uses-permission android:name="android.permission.INTERNET" />
现在还要加上一句
android:usesCleartextTraffic="true"
原因:Android P以上的应用默认都被限制了明文流量的网络请求,非加密的流量请求都会被系统禁止掉。同时,目标API级别为27或更低的应用程序的默认值为“ true”。面向API级别28或更高级别的应用默认为“ false”。
解决:usesCleartextTraffic 指示应用程序是否打算使用明文网络流量,例如明文HTTP
作用:忽略证书,可以使用明文流量访问,https&http都可以访问。
清单文件如下
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.my.ydo_test">
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.YDO_test"
android:usesCleartextTraffic="true">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>