在ionic项目中修改AndroidManifest.xml
我必须在我的AndroidManifest.xml中添加以下行:在ionic项目中修改AndroidManifest.xml,android,angular,cordova,ionic-framework,Android,Angular,Cordova,Ionic Framework,我必须在我的AndroidManifest.xml中添加以下行: <network-security-config> <base-config cleartextTrafficPermitted="true"> <trust-anchors> <certificates src="system" /> </trust-anchors> </base-confi
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" />
</trust-anchors>
</base-config>
</network-security-config>
我将其添加到我的项目\u path/config.xml中:
<edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application" xmlns:android="http://schemas.android.com/apk/res/android">
<application android:networkSecurityConfig="@xml/network_security_config" />
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" />
</trust-anchors>
</base-config>
</network-security-config>
</edit-config>
但是我的AndroidManifest.xml在执行ionic cordova build android时没有被修改
networkSecurityConfig
没有直接从config.xml加载其配置。它位于一个单独的XML文件中。
它来自resources/android/xml/network\u security\u config.xml
文件(如config.xml中的
行所示)
将以下内容放在resources/android/xml/network\u security\u config.xml中:
然后跑
爱奥尼亚科尔多瓦酒店
现在进入
platforms/android/app/src/main/res/xml/network\u security\u config.xml
你会看到你的配置相应地更新了。但是为什么你要添加完整的标记只有android:networkSecurityConfig=“@xml/network\u security\u config”应该添加到应用程序标记中。剩下的应该转到android xml folderI必须在服务器上调用api,但它没有https协议,我看到这个帖子:https://stackoverflow.com/questions/57433362/api-calls-made-in-ionic-4-app-not-working-on-android-device
根据android中的http请求限制访问您的api协议http或https是什么?我的api协议是https您是否尝试过使用android:usesCleartextTraffic=“true”我在我的网络中有这样一个配置文件:``localhost```我只是用你的行或类似的行替换:localhost
config在运行ionic cordova prepare
时得到了你想要的更新?我的帖子帮到你了吗?是的,当我运行ionic cordova prepare
config时,配置会更新,但我的应用程序仍然会从api接收数据,因此我使用了一个新的https服务器来欢迎它