I just installed Xcode 8 beta in order to test my existing Cordova app in iOS 10 beta (via Simulator). When the app is launched, it just hangs on the loading page - seems the deviceready
event is not being fired.
So I also installed iOS 10 beta on my iPad Air (just in case it's a Simulator issue), but I get the same results.
The app works fine on iOS 9.3 (both device and Simulator).
Anyone encountered/fixed this problem?
UPDATE
Other symptoms of this problem include:
You can use cordova run ios --list to see all available targets and cordova run ios --target=target_name to run application on a specific device or emulator (for example, cordova run ios --target="iPhone-6" ). You can also use cordova run --help to see additional build and run options.
Apple can reject any application for any reason. People using hybrid technologies like Cordova may run into this problem if they don't actually use the device features Cordova gives them access to.
Safari for iOS is using WebKit2 (starting from iOS 8). Details about WebKit2. This seems to answer to your question. This plugin makes Cordova use the WKWebView component instead of the default UIWebView component, and is installable only on a system with the iOS 9.0 SDK.
To enable debugging on iOS, In the iOS device, go to Settings → Safari → Advanced → Enable 'Web Inspector' From the Mac, Safari → Preferences → Advanced → Enable 'Show Develop menu in menu bar' Once this is done, start the Cordova application and connect your iOS device with USB cable.
OK, I found the problem and the solution thanks to this post:
It seems that iOS 10 requires additional entries in the Content-Security-Policy
meta tag, namely gap:
and file:
. After adding these, my Content-Security-Policy
looks like this:
<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'">
And the app starts up and works fine on iOS 10.
Hope this helps others.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With