所以我有一个现有的应用程序已经在应用程序商店中存在了很长一段时间,截至 3 天前,我收到了更多支持查询,说我的应用程序无法连接到我的服务。
现在它终于在我的 Android 设备上发生在我身上——一切都适用于 iOS,也适用于模拟器上的 Android——但在现实世界中没有。
我已经尽可能通过使用 Cordova 进行逐步调试,并且它通过了白名单测试。我的第一个 XHR 请求工作正常,但后续的请求总是失败,直到我完全关闭应用程序并重新打开。
我正在使用cordova-plugin-whitelist@1.3.4
- 我也尝试过cordova-plugin-whitelist@1.0.0
我的Content-Security-Policy
看起来像这样
<meta http-equiv="Content-Security-Policy" content="default-src * 'self' gap:; img-src http://*.my-site.com.au https://*.my-site.com.au https://*.my-site.com http://*.my-site.com https://*.googleusercontent.com http://*.googleapis.com https://google.com https://*.google.com https://*.googleapis.com https://*.gstatic.com 'self' data:; style-src http://*.googleapis.com https://*.googleapis.com 'self' 'unsafe-inline'; script-src 'self' https://*.googleapis.com http://*.googleapis.com http://maps.google.com http://*.gstatic.com https://*.gstatic.com https://maps.google.com 'unsafe-inline' 'unsafe-eval'">
Run Code Online (Sandbox Code Playgroud)
我的 Cordova 配置有
<allow-navigation href="*" />
<allow-navigation href="http://*/*" />
<allow-navigation href="https://*/*" />
Run Code Online (Sandbox Code Playgroud)
我尝试添加/删除/替换上述/每个组合,<access origin="*" />
但没有运气。
我的 XHR 响应始终如下所示
xhr.responseUrl = "http://my-site.com/?d=12343902i49"
xhr.status = …
Run Code Online (Sandbox Code Playgroud) 我有一个奇怪的问题.当我启用硬件加速时,如果我绘制到画布元素,画布上绘制的任何内容都将重新绘制到页面顶部.
如果我关闭硬件加速,则不会发生此问题.
我只是在Android 4.1.1上亲自测试了它,但我之前在我们的一位用户之前注意到这个问题我无法复制(他们至少在Android 3+上)
我不能完全抓住截图(不太确定如何在Android上这样做),但我会尝试分解这个过程.
启用硬件加速
但是,如果没有硬件加速,则不会执行步骤4.我应该对HTML5 Canvas做些什么吗?
我不确定我需要传递哪些信息 - 它似乎发生在三星,HTC和谷歌Nexus手机/平板电脑上,所以它是一个一致的错误.
我试着四处寻找,但我总是得到游戏开发线程或类似的东西.
我真的想要启用硬件加速,这是唯一出现的问题 - 性能提升太令人难以置信了