我正在研究如何将我的应用程序连接到在 NodeJS 和 MongoDB 上运行的服务器,我相对来说是一个初学者,所以我想知道如何连接它们,我目前正在使用 Retrofit 来建立连接,正如我创建的许多人建议的那样一个网络安全配置xml文件我已经尝试过然后我在android网站上看到这篇文章表明它在android 8.1之后停止text
我收到网络安全策略不允许与本地主机进行 CLEARTEXT 通信(我也尝试使用 10.0.2.2)的错误。 我还检查了 YouTube 是否有任何推荐,但还没有人尝试过...... 有人可以建议/写下答案吗
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="false">
<domain includeSubdomains="true">localhost</domain>
<domain includeSubdomains="true">10.0.2.2</domain> <!-- If using emulator -->
<!-- Add other domains as needed -->
</domain-config>
</network-security-config>
以及 在AndroidManifest.xml中
android:usesCleartextTraffic="true"
我也添加了
标志
android:usesClearTextTraffic
在SDK级别23以下被忽略,即Android 6,棉花糖,正如你所说的那样
你在这里做错了,是将这两件事加在一起
如果您设置此标志,它应该可以在 API 23 以上工作,不会给您带来任何问题
android:usesCleartextTraffic="true"
但是您还有一个额外的网络安全配置,您明确表示您不想允许明文流量
<domain-config cleartextTrafficPermitted="false"> // This should be true, to allow request to HTTP servers like localhost
所以有冲突,一处是真的,一处是假的。理想情况下两者应该相同