Adobe PhoneGap - iOS 向上滑动控制中心后应用程序才会加载

Adobe PhoneGap - iOS app not loading until swipe up for Control Center

我在开发模式下使用带有 Cordova cli-6.5.0 的 Adob​​e PhoneGap 和 Apple 安装。在 iPad 2 (iOS 9.3.5) 上,应用程序在启动时可以正常运行,但在 iPhone SE 和 iPhone 7 上都 运行 当前 iOS 10.3.2 在我向上滑动并打开控制中心之前,应用程序不会启动。不确定是 iOS 版本问题还是设备问题。

无论应用程序是在飞行模式下离线页面还是在线启动应用程序,都会出现同样的错误。我的猜测是 onDeviceReady 在启动控制中心之前不会对 iPhone 测试做出响应。

有什么建议吗?

因为这只影响 iOS 10,听起来您遇到的问题与内容安全策略规则对 UIWebView 的严格应用有关,它是在 iOS 10 中添加的。通过打开您正在将您的应用程序置于后台的控制中心,然后关闭控制中心会恢复该应用程序,这会导致问题消失。

请参阅 以获得完整的解释和解决方案,但简而言之,请确保您的 index.html 中有一个 Content-Security-Policy 元标记,并确保它包含 gap:file:,例如:

<meta http-equiv="Content-Security-Policy" content="default-src * gap: file:; style-src 'self' 'unsafe-inline'; img-src 'self' data:; script-src * 'unsafe-inline' 'unsafe-eval'">