I'm building a React Native app with Expo (SDK v35) and upon delivering the binaries to App Store Connect, I get a warning that many have gotten:
ITMS-90809: Deprecated API Usage - Apple will stop accepting submissions of apps that use UIWebView APIs.
I realize the warning is related to react-native-webview prior to v7.0.1 and that it will come up if UIWebView is used anywhere, including the dependencies.
However, I have cleaned up the code in its entirety, to the point that grep -r UIWebView ./* turns up empty (I even removed comments). I also ensured that all dependencies use a version of react-native-webview that is greater than the patched 7.0.1 version. Here's the log from grep -r webview ./node_modules/*/package.json:
./node_modules/react-native-signature-canvas/package.json: "react-native-webview": "^7.5.2"
./node_modules/react-native-webview/package.json: "_from": "react-native-webview@^7.5.2",
./node_modules/react-native-webview/package.json: "_id": "[email protected]",
./node_modules/react-native-webview/package.json: "_location": "/react-native-webview",
./node_modules/react-native-webview/package.json: "raw": "react-native-webview@^7.5.2",
./node_modules/react-native-webview/package.json: "name": "react-native-webview",
./node_modules/react-native-webview/package.json: "escapedName": "react-native-webview",
./node_modules/react-native-webview/package.json: "_resolved": "https://registry.npmjs.org/react-native-webview/-/react-native-webview-7.6.0.tgz",
./node_modules/react-native-webview/package.json: "_spec": "react-native-webview@^7.5.2"
The only part of the app where WebView is actually used is through the module react-native-signature-canvas, which not only uses webview versions >= 7.5.2 but also passes useWebKit={true}
as props, ensuring the use of WKWebView
, not UIWebView
.
Any suggestions on how to get rid of the warning? Also, if I submit the app for review anyway, will it be rejected? Is the warning taken into consideration for review or will they simply test the app on an iOS version that does not support UIWebView
and see if it runs normally?
It looks like the Expo team has addressed this and a fix will be released in Expo SDK 37. More details found on this Github issue: https://github.com/expo/expo/issues/5497
The warning is given because the compiled app still has the UIWebView
API inside it, even if the useWebKit={true}
prop is set. Unfortunately Apple has just informed developers that they will no longer be accepting app submissions from April 2020 that use or have the UIWebView
inside the application. In the meantime you can submit new and updated applications to the App Store until this hard deadline.
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