我的应用程序存在问题,不允许到 x 的明文 HTTP 流量。
我已经尝试将 android:usesCleartextTraffic="true" 放入我的清单中。但我想将“android:usesCleartextTraffic”标志更改为“false”以防止发送未加密的流量。
如何解决这个问题?
如果在某个时候您想移动到 MAUI(没有
AssemblyInfo.cs
),您可能需要将 UsesCleartextTraffic
)添加到 Platforms/Android/MainApplication.cs
中的应用程序属性:
#if DEBUG // connect to local service on the
[Application(UsesCleartextTraffic = true)] // emulator's host for debugging,
#else // access via http://10.0.2.2
[Application]
#endif
public class MainApplication : MauiApplication
{
...
}
您可以用一行代码解决这个问题。 在 android 项目的属性下打开 AssemblyInfo.cs 并添加以下代码:
[assembly: Application(UsesCleartextTraffic = true)]
在毛伊岛,展开 Platforms/Android 并编辑 MainApplication.cs。
将顶部附近的“[Application]”替换为“[Application(UsesCleartextTraffic = true)]”
假设您正在访问不支持 HTTPS 的服务器,那么您可以在网络安全配置中创建例外。 您可以像这样创建一个文件
net_sec_conf.xml
:
<?xml version="1.0" encoding="utf-8" ?>
<network-security-config>
<base-config cleartextTrafficPermitted="false">
<trust-anchors>
<certificates src="system" />
</trust-anchors>
</base-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">api.example.org</domain>
<trust-anchors>
<certificates src="system" />
</trust-anchors>
</domain-config>
</network-security-config>
然后在清单文件中添加以下行:
android:networkSecurityConfig="@xml/net_sec_conf"
(假设您已将文件放入 xml 文件夹中)。 这样,明文 HTTP 流量将仅允许用于指定的域。
当然,如果服务器支持HTTPS,那么你只需要将你的URL“http://...”更改为“https://...”即可。
这适用于 .Net MAUI。
什么对我有用:
在Platforms\Android\Resources\xml 中创建一个名为network_security_config.xml 的文件(如果不存在,则创建“xml”文件夹)。
将此配置添加到文件中,将 YOUR_IP_ADRESS 替换为您的机器 ip 地址,您可以通过在 cmd 中运行 'ipconfig' 获取该地址并复制 'Adresse IPv4' 的值:
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">YOUR_IP_ADRESS</domain>
</domain-config>
</network-security-config>
转到 AndroidManifest.xml 右键 -> 打开方式 -> XML 编辑器(取决于您使用的 IDE)并将以下值添加到应用程序节点:
转到 Platforms/Android 文件夹中的 MainApplication.cs,并将以下代码作为属性添加到类中:
... #如果调试 [Application(UsesCleartextTraffic = true)] // 用于开发, #别的 [Application(UsesCleartextTraffic = false)] // 生产 #万一 公共类 MainApplication :MauiApplication ...
编码快乐!