ITMS-90809: Deprecated API Usage - Apple will stop accepting submissions of apps that use UIWebView APIs

People have started receiving this warning on App submissions today


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.


Would be good to have more information about it, like an official deadline.


Also the system used to warn is giving false positives, looks like it just searches for UIWebView word and doesn't really check if the app is using an UIWebView or not.

Post not yet marked as solved Up vote post of jcesarmobile Down vote post of jcesarmobile
34k views

Answers

I agree, this is a bit vague.

Does this include any 3rd party library(pods) we use that also implements UIWebView?

Yes, it seems that you get the warning as long as any of your code, including dependencies, is using UIWebView, so you'll have to check them all to make sure none of them is using UIWebView

Bumping this thread. It would be appreciated if Apple could provide a rough deadline. Is this days, weeks, months, a year? This would help us to prioritize the work of removing the UIWebView dependency, which is part of a 3rd party library that we use.

Bumping again. I'm also curious what the deadline is, as well as whether or not it applies to 3rd party dependencies.

Coleroberts, it also applies to 3rd party dependencies, there has been reports on admob, facebook and a lot more frameworks, most of them have been updated by now.

As far as I know, FacebookAudienceNetwork(version >= 5.4.0) and vungle(version >= 6.4.2) are safe, other ad networks are woking on removing reference of UIWebView such as adcolony, applovin, appnext, unityads, inmobile, mobvista, ironsource, batmobile etc.

We uploaded today a Cordova app and got no warning.

Is the warning non-systematic or was it removed ?

Hi All, we are using ionic/cordova to build ios/android apps, I have also received same email.

The Below cordova plugins use UIWebView in-order to support iOS 8 or below, but while building the code am targeting to iOS 11, also we are not using this deprecated class anywhere. @apple should have a logic to check if these classes are being actively used instead of just checking for a key word. or stop send us false emails.

  • Ionic-web-view. 4.1.1
  • In app browser 3.1.0


additionally will this help if we use

https://ionicframework.com/docs/native/safari-view-controller

https://ionicframework.com/docs/v3/wkwebview/

mobilespot are you using any of the plugin?

  • Ionic-web-view. 4.1.1
  • In app browser 3.1.0


thank you

I do also have seen this warning for one of my Apps, but not for the other, though both do use UIWebView. So this warning might not be simply based on the usage of UIWebView alone, but maybe also some other information, like for example deployment targets and other "invisible" dependencies and maybe it's also a difference if this is a new App or an update...


Right now this really seems to be a warning only, so you probabyl still can get Apps accepted for the AppStore which use UIWebView.


And Apple can't really remove UIWebView from the iOS so easily, probably hundreds of thousands of (older) Apps would no longer work. Though of course they could stop accepting new Apps and updates which use UIWebView. But this can be also difficult because Apps which are supposed to run under older iOS releases (deployment target) might still require UIWebView.



In general I would appreciate if Apple would spend its time to make WKWebView a real replacement for UIWebView instead of forcing us to a WKWebView which still can't do some basic stuff (which would be simple to implement with UIWebView).


For example...

- If you need to route the traffic through a proxy, you can't do this with WKWebView.

- If you want to implement an Offline mode, you would need to control and handle the cache, not possible with WKWebView.

- If you need to set custom HTTP headers (for example if you need to enforce "safe search" on youtube in a browser for children, you would have to add a certain HTTP header in all requests), not possible in WKWebView.

- You need a certain cookie accept policy (instead of Apple's proprietary cookie handling, which doesn't work for all sites - even Safari fails on a few web sites because of this), you are out of luck with WKWebView.

- The list can go on forever (almost ;-)...

what Xcode are u using to compile the app 11 || 10?


Anyone knows if this error will appear on older legacy apps build on xcode 10.x?

Hello Jprophet8991,

Apple will be able to detect the use of UIWebView regardless of the version of Xcode that is being used, they are simply checking to see if you include the usage of a UIWebView anywhere in your code (regardless of whether or not you use it).


Becuase the API is depricated, Apple will send you the warning regardless of your Xcode version. They will still allow applications to be deployed to TestFlight and the App Store, but there is no gaurnetee on how long this window will last.


Hopefully this helps!

As per My understanding , Apple was giving warning to Remove UIWebview and replace it with WKWebview from last more than 2 years.

So Apple gave fairly nice time to update the API to all of us.

Thanks.

My main problem with this is that the WK calls they replaced UIWebView with don't work well on iOS 9. I try to have my software work on older devices like iPad 3 that are stuck on iOS9.3. If they are just checking for calls to UIWebkit, then I can't do a gestalt check onthe OS to swap between ways of presenting web content. (Actually, I can if I use low-level objC calls that Apple reviewers wouldn't see if they don't run under iOS 9).

Hi There,

we are using our code base from years to develop many apps. But this time our new build is getting rejected from processing. We have updated the code with WKWebView, pods also and I can't find any UIWebView in my code(workspace & storyboard). But still I am getting the same error. Can someone please help me to resolve this issue.