ITMS-90809: Deprecated API Usage - existing app that use UIWebView are no longer accepted
Yes, Apple did change the policies Are you using ionic? if so, install these:
cordova plugin add cordova-plugin-ionic-webview@latest
npm install @ionic-native/ionic-webview
Then add this to your config.xml under ios platform:
<preference name="WKWebViewOnly" value="true" />
<feature name="CDVWKWebViewEngine">`
<param name="ios-package" value="CDVWKWebViewEngine" />
</feature>
<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
Finally run ionic cordova prepare ios
to reflect the changes
then run ionic cordova build ios --prod
PS: Make sure you have only one webview plugin installed.. either this or the 'cordova-webviewengine'. But the above method worked for me and my app is in app store now
In Terminal, run this command in your iOS project folder:
grep -r "UIWebView" .
It will show all the files that uses UIWebview. Update whatever files to use WKWebView. If your pod libraries are showing that it has UIWebView. Update the pods files as well.
FYI it took me 6 hours to fix my project to use WKWebView since I had to update the pods files and had to fix a lot of code.
i faced the same issue few days earlier for my IONIC 4 Project. when i uploaded my IPA, i got this warnings from App Store Connect.
I fixed the "UIWebView" issue, by the following steps. hope it will also work for you.
Follow this steps :
Run the following command to Remove the existing platform.
ionic cordova platform rm ios
remove the existing web view plugin and install the latest one.
ionic cordova plugin rm cordova-plugin-ionic-webview
ionic cordova plugin add cordova-plugin-ionic-webview@latest
Install this also.
npm install @ionic-native/ionic-webview@latest
Add this to your config.xml file under the ios part.
<preference name="WKWebViewOnly" value="true" /> <feature name="CDVWKWebViewEngine"> <param name="ios-package" value="CDVWKWebViewEngine" /> </feature> <preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
check your
"cordova-ios": "^5.1.1"
version. it should be5.1.x
or greater.then run this commands to build again.
ionic cordova platform add ios
ionic cordova prepare ios
ionic cordova build ios
that's all. it worked for me.
My Package.json file :
Sharing my config.xml also :
Follow this link for more info :
https://ionicframework.com/blog/understanding-itms-90809-uiwebview-api-deprecation/
Thanks.