我有一个用Cordova 8.1.2开发的应用程序,并在Android 8.1 Oreo API Level 27修订版3下编译,成功地在Play Store上工作并与注册用户一起工作。
在过去的几周里,一些用户一直在将手机升级到Android 9.0 Pie,当他们打开应用程序并进行注册或登录操作时,他们会收到一条带有服务器错误的AJAX通信。
我已经在开发者模式下用Android Studio和Emulator用Android 9.0 Pie试过了,我得到了同样的结果。我用不同的AJAX URL进行了一些测试,AJAX调用从未到达服务器。
有同样问题的人吗?
以下是Android直播间的错误日志:
2019-01-30 20:29:19.701 1921-1921/? E/netmgr: Failed to open QEMU pipe 'qemud:network': Invalid argument
2019-01-30 20:29:22.351 1754-1900/? E/storaged: getDiskStats failed with result NOT_SUPPORTED and size 0
2019-01-30 20:29:38.714 1925-2029/system_process E/memtrack: Couldn't load memtrack module
控制台中的AJAX错误视图:
{"readyState":0,"status":0,"statusText":"error"}
2条答案
按热度按时间idv4meu81#
最后,我解决了这个问题。问题是,在Android 9Pie API 28中,默认情况下允许对HTTPS服务的AJAX调用。有收件人选项:
1.在AJAX URL中进行HTTPS调用
1.为您的http站点添加例外(view developer android)
b09cbbtk2#
你需要从SDK管理器下载API28并更新平台工具,然后重新编译你的应用程序。