Cordova 10 changes

Android

  • Cordova Android Platform: Updated to "9.0.0" (API level 29)

  • Gradle version: Updated to "6.5"

iOS

  • Cordova iOS platform: Updated to "6.1.1"

  • Xcode: "11.3" (Xcode12 support will be announced separately.)

iOS app icon (20x20)

Registration of iOS app icon size 20x20 is required. Please follow the steps below to register.

  1. From Monaca Cloud IDE, choose Configure → App Settings for iOS.

  2. Register the image in "20 x 20" in the icon section.

Notes on WKWebView

From Cordova 10, the WebView used in iOS has been updated from the conventional "UIWebView" to "WKWebView". Please note that UIWebView is no longer available for Cordova 10 projects.

Remove Custom Scheme plugin

From Cordova 10, Cordova comes standard with the same functions as the "Custom Scheme" plugin. Therefore, the "Custom Scheme" plugin is no longer required, and if it is used in the project, it will be deleted from the project when you upgrade your project to Cordova 10.

In addition, the following settings will be added to config.xml in order to use the functions installed in Cordova.

<platform name="ios">
<preference name="scheme" value="monaca-app"/>
<preference name="hostname" value="localhost"/>
</platform>

Taking over the LocalStorage data in iOS

Since Cordova 10 now supports WKWebView and CustomScheme plugin is no longer required, the following steps are required to take over LocalStorage contents by updating from an existing project. (Note that if you are using UIWebView in Cordova 9, you will not be able to inherit the LocalStorage data. Also the custom debugger will not inherit the contents of LocalStorage.)

If you were using the CustomScheme plugin in Cordova 9

If you were using the CustomScheme plugin in your existing Cordova 9 project, Remove the CustomScheme plugin and update the config.xml preference as follows.

<preference name="scheme" value="monaca-app"/>
<preference name="hostname" value="monaca.io"/>

Notes on Android external storage

The security of the data storage area has changed in Android 10 (API level 29), which is used as standard from Cordova 10. This change may require additional settings for some plugins.

For the plugin provided by Monaca, cordova-plugin-media-capture is applicable. In Monaca Debugger for Android, requestLegacyExternalStorage is set to access the data storage destination of cordova-plugin-media-capture.

When using cordova-plugin-media-capture in a built app or custom build debugger, you need to add the Android namespace to the widget tag in config.xml and add requestLegacyExternalStorage="true".

<widget xmlns:android="http://schemas.android.com/apk/res/android">
<platform name="android">
<edit-config file="AndroidManifest.xml" target="/manifest/application" mode="merge">
<application android:requestLegacyExternalStorage="true"/>
</edit-config>
</platform>