5
votes

When submitting my latest build, Apple suddenly returned a message saying that there was an issue, specifically:

ITMS-90809: Deprecated API Usage - Apple will stop accepting submissions of apps that use UIWebView APIs. See https://developer.apple.com/documentation/uikit/uiwebview for more information. What that means and are that related to using the IONIC framework. How to fix it.

8

8 Answers

15
votes

The cordova team yesterday released 2019-11-25 a release [email protected]

This release resolves the ITMS-90809 alert from the apple store.

cordova platform remove ios
cordova platform add [email protected]

Add <preference name = "WKWebViewOnly" value = "true" /> to your config.xml file

Run "cordova prepare ios" to apply the changes.

https://cordova.apache.org/announcements/2019/11/25/cordova-ios-release-5.1.0.html#comment-4702612854

3
votes

Use cordova-ios version 5.1.0 or above. if you are using facebook4, googleplus, fcm and inappbrowser plugins then upgrade them to latest versions. It is not mandatory to migrate to Capacitor.

add this to your config.xml file

<preference name="WKWebViewOnly" value="true" />
2
votes

First remove cordova ios

cordova platform remove ios

Add cordova for ios

cordova platform add [email protected]

Ensure you have a WKWebView plugin installed: if not add by using following command.

cordova plugin add cordova-plugin-ionic-webview@latest

Add

<feature name="CDVWKWebViewEngine">
<param name="ios-package" value="CDVWKWebViewEngine" />
</feature>
<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
<preference name="WKWebViewOnly" value="true" /> 

<preference name="WKWebViewOnly" value="true" />

to your config.xml file.

Run cordova prepare ios to apply the changes.

cordova prepare ios

set webkitframework to required in Xcode

0
votes

This is currently a problem with the Ionic framework, you can follow the ongoing discussion at the official forums.

Ionic team claims that this warning can be ignored but there are concerns that Apple might indeed reject Apps built with Ionic although no case is known (yet). The suggested solution is using Capacitor instead of Cordova but depending on your usage of Cordova plugins this may not be an option.

0
votes

Just try use ionic capacitor Capacitor

or update UIWebView to WKWebView

rm platform ios & android

update and install WKwebView ionic cordova plugin add cordova-plugin-ionic-webview --save https://ionicframework.com/docs/v3/wkwebview/

0
votes

Just try use ionic capacitor Capacitor

https://capacitor.ionicframework.com/

we finally shiftted cordova to capacitor and make it my app

0
votes

It's not possible right now using cordova, even though using wkwebview there are some references in the code to the uiwebview, so you will have to wait cordova take care of this, see this issue for more details: https://github.com/apache/cordova-ios/issues/661

0
votes

1- make sure that you have updated all othe plugin you use to the latest version . For example using an old version of cordova-plugin-inappbrowser can cause such problem

2- install V6+ of cordova ios

 ionic cordova platform rm ios 
 ionic cordova platform add [email protected]

I strongly suggest that you perform intensive smoke tests after upgrading .

Also I would consider migrating to Capacitor, although it does not fulfill all my needs ATM.