我使用 HTML5 和 Javascript 开发了cordova 跨平台应用程序。但是最近我在android上遇到了一些问题。
以前我使用 Cordova 7,其中 android 版本为 6.3,支持 android API 16 到 26。但根据新的谷歌规则,从 2019 年 8 月开始,所有应用程序都必须针对 Android API 28,即 Android 8 和 Android 9。
Cordova 的最新版本是支持 Android 8 的 Cordova 9。Cordova 没有发布任何支持 Android 9 的版本。
因此,要开发面向 API 28 的应用程序,我必须使用 Android 8。但是我在应用程序方面遇到了一些问题。以前我的应用程序运行良好。当我使用 Cordova 9 使用 Android 8 开发应用程序时,它在所有 Android 8 及以下版本的手机上都能正常工作,但在 Android 9 中显示错误。特别是 AJAX 请求。
我正在使用 http(不是 https)向服务器发送 AJAX 请求。在一些博客中,我看到它可能会导致错误。但是我看不到任何修复方法,目前我无法选择使用 https。
另一种方法是设置<preference name="android-targetSdkVersion" value="26" />哪个在所有 android 版本(6~9)中都可以正常工作,但是当我在 Google Play 商店中使用此配置上传时,它会显示警告以将目标 API 更新为 28。
那么现在我该怎么办?
提前致谢。
注意:我找到了一种使用 http 的方法,但根本不了解它。如果有人能解释我会很高兴。下面给出的链接:https : //developer.android.com/training/articles/security-config
将手机升级到 Android 9 Pie API 28 Revision 6 后 Cordova App 中的 Ajax 错误
小智 6
您所要做的就是在 AndroidManifest.xml 中的应用程序标记上包含以下键对值:
机器人:使用CleartextTraffic =“真”
在 API 28 上,此属性默认设置为 false(出于安全原因),在以前的 Android API 中为 true。
| 归档时间: |
|
| 查看次数: |
3029 次 |
| 最近记录: |