Cordova-ios 6.0.0 builds

Version 6 of cordova-ios is out (6/7/20) which promises to eliminate the WKWEBVIEW Plugin and allow apps to be submitted to the App Store under Apples new policy. I have a working version using the plugin but had decided to try out the new sdk version. I have tried repeated builds with different combinations of plugins and I can’t get the app to run under IOS (same android builds do run fine). The splashscreen flashes for a moment (always in Landscape mode for some reason) and then the white screen of death appears. I removed inappbrowser and fileopener2 along with the splashscreen plugin just to see if it was related to them. I suspect the home page is not loading due to some CORS issue but the debugger has not been helpful in disclosing that,

I’m going to fall back on the previous build so I’m really getting the conversation started here regarding this new module as it will be important going forward. Has anybody successfully built and run an app using cordova-ios 6?

1 Like

For the tests that I was doing with WKWebView the problem occurs with XHR to local file: // paths
Here are two issues in this regard, to follow:


I understand that we have to continue using [email protected] until the plugin “cordova-plugin-wkwebview-file-xhr” is compatible with [email protected]

I don’t know if there is another way to get local files from file: //

If anyone knows of a different way to XHR or managed to suck it up, please let them know.

  • install cordova-ios@6
  • remove all wkwebview related plugins
  • add scheme and host to config.xml:
<preference name="scheme" value="app" />
<preference name="hostname" value="localhost" />
1 Like

Thanks Vladimir. I’ve confirmed those 2 directives work. Although, from the current cordova blog release notes, it’s not obvious what those directives do, how to use them, and whether or not they are required. Apparently they override the default file:// scheme which is rejected by WKWEBVIEW. As previously noted, if you still require the file:// scheme, you should stay with 5.1.1 or wait until cordova-plugin-wkwebview-file-xhr is updated for 6.0.0.

One apparent bug at this time, the view on my ipad is locked into portrait mode and there is no way to change that to landscape. Probably not much of an issue for iphones.

Thank you very much for the recommendations Vladmir, thanks to them I made further progress with [email protected]. To continue; the details:
App with Framework7-core V4
Local files are successfully reached with XHR calls. But I couldn’t make AJAX calls (using FWK7 requests), getting the following error:


I tried different values for “Access-Control-Allow-Origin” from index.html and also “allow-navigation” from config.xml but couldn’t find how to fix it.
Is it possible to solve it from the App settings?

App with Framework7-core V1
The Cordova application starts but remains blank. The application assets are reloaded over and over indefinitely and in the debugger I get the following output:

2020-06-14 18:17:45.384418-0300 Cajeros Automáticos Rosario[6978:426354] Apache Cordova native platform version 6.0.0 is starting.
2020-06-14 18:17:45.385961-0300 Cajeros Automáticos Rosario[6978:426354] Multi-tasking -> Device: YES, App: YES
2020-06-14 18:17:45.410677-0300 Cajeros Automáticos Rosario[6978:426354] Could not load the "LaunchStoryboard" image referenced from a nib in the bundle with identifier "com.rma.cityatm"
2020-06-14 18:17:45.688808-0300 Cajeros Automáticos Rosario[6978:426354] The preference key "MediaPlaybackAllowsAirPlay" is not defined and will default to "TRUE"
2020-06-14 18:17:45.754799-0300 Cajeros Automáticos Rosario[6978:426354] The preference key "AllowBackForwardNavigationGestures" is not defined and will default to "FALSE"
2020-06-14 18:17:45.755518-0300 Cajeros Automáticos Rosario[6978:426354] The preference key "Allow3DTouchLinkPreview" is not defined and will default to "TRUE"
2020-06-14 18:17:45.756016-0300 Cajeros Automáticos Rosario[6978:426354] CDVWebViewEngine will reload WKWebView if required on resume
2020-06-14 18:17:45.757693-0300 Cajeros Automáticos Rosario[6978:426354] Using WKWebView
2020-06-14 18:17:45.759375-0300 Cajeros Automáticos Rosario[6978:426354] [CDVTimer][console] 0.197053ms
2020-06-14 18:17:45.760248-0300 Cajeros Automáticos Rosario[6978:426354] [CDVTimer][handleopenurl] 0.308990ms
2020-06-14 18:17:45.764945-0300 Cajeros Automáticos Rosario[6978:426354] [CDVTimer][intentandnavigationfilter] 4.227996ms
2020-06-14 18:17:45.765401-0300 Cajeros Automáticos Rosario[6978:426354] [CDVTimer][gesturehandler] 0.233054ms
2020-06-14 18:17:45.766070-0300 Cajeros Automáticos Rosario[6978:426354] [CDVTimer][inappbrowser] 0.218034ms
2020-06-14 18:17:45.766287-0300 Cajeros Automáticos Rosario[6978:426354] [CDVTimer][TotalPluginStartup] 7.239938ms
2020-06-14 18:17:46.015467-0300 Cajeros Automáticos Rosario[6978:426354] IAB.close() called but it was already closed.
2020-06-14 18:17:46.422508-0300 Cajeros Automáticos Rosario[6978:426383] [ProcessSuspension]  0x282240fc0 - ProcessAssertion() Unable to acquire assertion for process with PID 0
2020-06-14 18:17:46.571626-0300 Cajeros Automáticos Rosario[6978:426354] IAB.close() called but it was already closed.
2020-06-14 18:17:47.268716-0300 Cajeros Automáticos Rosario[6978:426354] IAB.close() called but it was already closed.
2020-06-14 18:17:47.615415-0300 Cajeros Automáticos Rosario[6978:426425] [ProcessSuspension]  0x2822413c0 - ProcessAssertion() Unable to acquire assertion for process with PID 0
2020-06-14 18:17:47.749823-0300 Cajeros Automáticos Rosario[6978:426354] IAB.close() called but it was already closed.
2020-06-14 18:17:48.225303-0300 Cajeros Automáticos Rosario[6978:426383] [ProcessSuspension]  0x2822ac9c0 - ProcessAssertion() Unable to acquire assertion for process with PID 0
2020-06-14 18:17:48.360813-0300 Cajeros Automáticos Rosario[6978:426354] IAB.close() called but it was already closed.
2020-06-14 18:17:48.816254-0300 Cajeros Automáticos Rosario[6978:426425] [ProcessSuspension]  0x2822b6200 - ProcessAssertion() Unable to acquire assertion for process with PID 0
2020-06-14 18:17:48.989647-0300 Cajeros Automáticos Rosario[6978:426354] IAB.close() called but it was already closed.
2020-06-14 18:17:49.452905-0300 Cajeros Automáticos Rosario[6978:426380] [ProcessSuspension]  0x282240d00 - ProcessAssertion() Unable to acquire assertion for process with PID 0
2020-06-14 18:17:49.620286-0300 Cajeros Automáticos Rosario[6978:426354] IAB.close() called but it was already closed.
2020-06-14 18:17:49.971863-0300 Cajeros Automáticos Rosario[6978:426382] [ProcessSuspension]  0x2822bbbc0 - ProcessAssertion() Unable to acquire assertion for process with PID 0
2020-06-14 18:17:50.144448-0300 Cajeros Automáticos Rosario[6978:426354] IAB.close() called but it was already closed.
2020-06-14 18:17:50.561421-0300 Cajeros Automáticos Rosario[6978:426380] [ProcessSuspension]  0x2822a04c0 - ProcessAssertion() Unable to acquire assertion for process with PID 0
2020-06-14 18:17:50.687547-0300 Cajeros Automáticos Rosario[6978:426354] IAB.close() called but it was already closed.
2020-06-14 18:17:51.273480-0300 Cajeros Automáticos Rosario[6978:426425] [ProcessSuspension]  0x2822ae400 - ProcessAssertion() Unable to acquire assertion for process with PID 0
2020-06-14 18:17:51.445485-0300 Cajeros Automáticos Rosario[6978:426354] IAB.close() called but it was already closed.
2020-06-14 18:17:51.824490-0300 Cajeros Automáticos Rosario[6978:426428] [ProcessSuspension]  0x2822a4b40 - ProcessAssertion() Unable to acquire assertion for process with PID 0
2020-06-14 18:17:51.997184-0300 Cajeros Automáticos Rosario[6978:426354] IAB.close() called but it was already closed.


“[ProcessSuspension] 0x2822a4b40 - ProcessAssertion() Unable to acquire assertion for process with PID 0” y “IAB.close() called but it was already closed.” are displayed indefinitely as the application restarts.

Any suggestions for each of the cases?
Thank you very much, greetings!

You need to properly configure Access-Control-Allow-Origin header on SERVER where you do the request

1 Like

Thanks Vladimir.
I will continue investigating the behavior I have in version 1, if you have any thread to pull I would appreciate it.
Regards.

The cause of my app restarting over and over again is due to the jquery.i18n.properties plugin.
FWK7-V1 works like a charm in [email protected] and WKWebView.
I apologize for reporting an error that did not correspond to this framework.
Regards, Fabricio.

Not sure if this will help but read this on Github:
Try <preference name="Orientation" value="all" />

I’ve just updated to cordova-ios 6.0.0, and made the changes outlined above re: the scheme and hostname settings in the config.xml file and removing the wkwebview plugins, but now my app does not respond at all to any input on the device, and on a local simulator build is stuck on the splashscreen…
I can’t see any useful output in Xcode’s console.

If you have it installed, remove cordova-plugin-splashscreen, In the Cordova-iOS 6.x platform, the splash screen feature has been integrated into its core and no longer needs this plugin. Also, update inAppbrowser to [email protected]

Actually, the latest splashscreen plugin has been updated to not install on IOS builds so if you update it, it can be safely included for android builds.

Hmmm, OK I’ve updated to the latest (5.0.4) cordova-plugin-splashscreen plugin, but still no joy.
I’ve tried launching on iPhone 7 (iOS 12.4) simulator - it does not progress past the splashscreen.
I’ve launched on iPhone 8 (iOS 13.5) simulator and it progresses to the app proper, but does not respond to any input at all. This is the same as on my physical device (iOS 13.5).
I’m going to do a bit more research on cordova iOS 6, as I don’t think this has anything to do with framework7 - but obviously I can’t submit to the app store until this is working.

1 Like

If app doesn’t pass the splash screen then i assume here could be some JS runtime error. Try debugging via Safari dev tools, maybe something is there?

Right - turns out it was the splashscreen plugin that was causing the issue. I’ve removed the plugin and the app is responsive now on both simulator and device.
I’m going to make sure my splashscreens have been updated to use the newer format on iOS (Launch Storyboards).
Thanks for the help everyone - much appreciated.

2 Likes