App rejected by Apple due to UIWebView being deprecated

Viewed 148

I was working on a minor update to an app already accepted and available in the Apple App Store, and when I uploaded the new version, I got an e-mail that the binary was rejected because:

ITMS-90809: Deprecated API Usage - New apps that use UIWebView are no longer accepted. Instead, use WKWebView for improved security and reliability. Learn more (https://developer.apple.com/documentation/uikit/uiwebview).

How do I go about doing that? Is there a build hint or something?

Additional Information: My app is using some CN1 extensions: SENSORS, BLUETOOTHLE, JSON (required for BLUETOOTHLE)

As the BLUETOOTHLE extension uses a Cordova plugin, and Cordova was using UIWebView, I think that is the likely source.

2 Answers

Codename One doesn't use UIWebView at all. Make sure all your cn1libs are up to date and list them. Review your own native code and dependencies if you have any to make sure there's no usage there.

According to Cordova's issue tracker, the Cordova plugin doesn't use UIWebView in its latest. It is possible that the build server has an old version cached. Try explicitly setting the version to 6.1 by adding the following build hint:

ios.pods=Cordova ~> 6.1

You'll already have this build hint, you just need to add the "~> 6.1" part.

Please post to indicate whether this fixed your issue, and I'll update the cn1lib to automatically add the version to the build hint.

Related