gpt4 book ai didi

android - Ionic 应用程序无法从 Android 设备上的远程 API 获取数据

转载 作者:行者123 更新时间:2023-11-30 05:01:51 24 4
gpt4 key购买 nike

所以我正在构建一个带有 API 调用的 Ionic 应用程序,当我在浏览器上运行它时一切正常,并且我获得了所有数据。

但是当我构建应用程序 (ionic cordova build android) 并在我的手机中安装 .apk 时,我没有得到任何数据, View 只是空的,我不知道为什么。

我按照找到的说明进行操作 here但仍然没有。

我什至按照此 question 中的说明安装了“android-permissions”cordova 插件但是当我在我的手机上安装应用程序时,它说该应用程序不需要任何许可。

我迷路了,真的不知道为什么它不起作用。请帮助需要!

项目信息

Created using "ionic start appName blank --type=angular"

Ionic Framework :

@ionic/angular 4.9.1

Ionic CLI :

5.4.1

Cordova CLI :

9.0.0

Cordova Platforms :

android 8.1.0

谢谢

最佳答案

这可能是一个 whitelisting或者,如果你有 Android 9 并且你的 API 不使用 TLS,一个 network security问题。

白名单

添加标签<access origin="https://your-server.com" />给你的config.xml .

网络安全

允许 Android 9 设备访问 http:// (非 TLS)API,附加 configuration是必须的。在 Cordova 应用程序中,执行以下步骤:

  1. 创建一个名为 network_security_config.xml 的文件在您的项目根目录中包含以下内容:
    <?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="false">
</domain-config>
</network-security-config>
  1. 将此添加到您的 config.xml将新配置包含在您的 Android list 中:
    <platform name="android">
...
<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" />
</edit-config>
<resource-file src="network_security_config.xml" target="app/src/main/res/xml/network_security_config.xml" />
...
</platform>

重建 Android 平台(即 ionic cordova platform rm androidionic cordova platform add android 等),它应该可以在您的设备上运行。

关于android - Ionic 应用程序无法从 Android 设备上的远程 API 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58099266/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com