问题描述
开开心心打包app给测试大爷
结果反馈啥权限都给了,就是连不上网!
啥情况啊
我测试机都没得问题!!
没办法,拿测试大爷的手机来打一下断点
就在下图位置出现了问题
因为修复了,我就不复现了
大概的描述就是ex的value = Cleartext HTTP traffic to XXX not permitted
啥意思呢?
一顿操作,谷歌一下
大概就是高版本的Android里不再允许不加密的明文链接,就是要你走https;
解决方法
解决方案来自于 Android 8: Cleartext HTTP traffic not permitted
respect
里面最高点赞数的答案里有三个解决方案
分别如下:
方法1
创建一个文件,路径为:**/res/xml/network_security_config.xml **
<?xml version="1.0" encoding="utf-8"?> <network-security-config> <domain-config cleartextTrafficPermitted="true"> <domain includeSubdomains="true">Your URL(ex: 127.0.0.1)</domain> </domain-config> </network-security-config> 123456
然后编辑你的 AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest ...> <uses-permission android:name="android.permission.INTERNET" /> <application ... android:networkSecurityConfig="@xml/network_security_config" ...> ... </application> </manifest> 12345678910
方法2
直接编辑你的 AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest ...> <uses-permission android:name="android.permission.INTERNET" /> <application ... android:usesCleartextTraffic="true" ...> ... </application> </manifest> 12345678910
方法3
如果你的 AndroidManifest.xml 文件里的 <manifest> 标签下有这个 android:targetSandboxVersion
就要修改它的值为 1
<?xml version="1.0" encoding="utf-8"?> <manifest android:targetSandboxVersion="1"> <uses-permission android:name="android.permission.INTERNET" /> ... </manifest> 12345
OK
最后我使用的是方法2,问题解决。
完事。