我在一个项目中工作,并且无法执行登录/注册页面。当我尝试实现代码时,它给我错误Cleartext HTTP traffic to 192.168.1.130 not permitted
。我检查了ipconfig
,这就是我的IPv4,所以我添加了192.168.1.130
,但是我也检查了127.0.0.1
,但是那个也不起作用。
我曾尝试实现<domain includeSubdomains="true">192.168.1.130</domain>
,但是这种方法不起作用(android:usesCleartextTraffic="true"
的实现也不起作用)。
我在后端使用XAMPP,如果我运行php代码,一切正常,因此没有问题。问题出在Android Studio(我正在使用Kotlin)中。
对于仿真器,我正在使用Genymotion仿真器(它使用VirtualBox)。
这是带有url
的按钮的代码。我检查了所有内容,但仍然没有实现。
login.setOnClickListener {
var url = "http://192.168.1.130/php/login.php?mobile=" + login_user.text.toString() +
"&password=" + login_password.text.toString()
答案 0 :(得分:3)
将此添加到清单中
Object.notifyAll()
像这样。
android:usesCleartextTraffic="true"
答案 1 :(得分:2)
要在Android 9 Pie中执行此操作,您必须像这样在Manifest应用程序标签中设置networkSecurityConfig:
<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
<application android:networkSecurityConfig="@xml/network_security_config">
</application>
</manifest>
然后按照清单中的命名方式创建一个名为network_security_config的xml文件,然后从那里开始,文件内容应如下所示,以启用所有不加密的请求:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" />
</trust-anchors>
</base-config>
</network-security-config>
如果这不起作用,请从安全域(HTTPS)发出请求。
答案 2 :(得分:0)
最近我在android 9 pie上也遇到了同样的问题。
我在清单中添加了
android:usesCleartextTraffic="true"
tools:ignore="UnusedAttribute"
提到第二行是忽略小于23的SDK警告。