Deprecated API Usage - Apple will stop accepting submissions of apps that use UIWebView APIs .

First of all thank you Vlad for helping me.

You have so many things to do but you prove always that you are here to help and support us 100%.

I should mention earlier that I don’t use the beta version of appodeal for iOS builds.

Just now I tried to build with beta version but the ipa size becomes huge.

From 12MB to 86MB.

The only thing I changed is adding the beta tag.

I have the 3575 Corona sdk version and 10.15.3 mac os.

I did a bit of testing with different Appodeal plugin settings and the configuration below works ok - no “Apple will stop accepting submissions of new apps that use UIWebView APIs starting from April 2020. See https://developer.apple.com/documentation/uikit/uiwebview for more information.” warning from Apple. However, if I do add StartApp then the warning is given from Apple. Other commented out parts of the Appodeal plugin I did not try out.

[lua]

 [‘plugin.appodeal.beta.base’] = { publisherId = ‘com.coronalabs’ },

 [‘plugin.appodeal.beta.AdColony’] = { publisherId = ‘com.coronalabs’ }, – OK

 – [‘plugin.appodeal.beta.AmazonAds’] = { publisherId = ‘com.coronalabs’ }, 

[‘plugin.appodeal.beta.AppLovin’] = { publisherId = ‘com.coronalabs’ }, – OK

[‘plugin.appodeal.beta.Appnext’] = { publisherId = ‘com.coronalabs’ }, – OK

[‘plugin.appodeal.beta.Chartboost’] = { publisherId = ‘com.coronalabs’ }, – OK

 – [‘plugin.appodeal.beta.FacebookAudience’] = { publisherId = ‘com.coronalabs’ }, 

 – [‘plugin.appodeal.beta.Flurry’] = { publisherId = ‘com.coronalabs’ }, 

[‘plugin.appodeal.beta.GoogleAdMob’] = { publisherId = ‘com.coronalabs’ }, – OK

[‘plugin.appodeal.beta.InMobi’] = { publisherId = ‘com.coronalabs’ }, – OK

[‘plugin.appodeal.beta.IronSource’] = { publisherId = ‘com.coronalabs’ }, – OK

– [‘plugin.appodeal.beta.Mobvista’] = { publisherId = ‘com.coronalabs’ }, 

– [‘plugin.appodeal.beta.MyTarget’] = { publisherId = ‘com.coronalabs’ }, 

– [‘plugin.appodeal.beta.Ogury’] = { publisherId = ‘com.coronalabs’ }, 

– [‘plugin.appodeal.beta.StartApp’] = { publisherId = ‘com.coronalabs’ }, PROBLEM

– [‘plugin.appodeal.beta.Tapjoy’] = { publisherId = ‘com.coronalabs’ },  

– [‘plugin.appodeal.beta.TwitterMoPub’] = { publisherId = ‘com.coronalabs’ },

[‘plugin.appodeal.beta.Unity’] = { publisherId = ‘com.coronalabs’ }, – OK

[‘plugin.appodeal.beta.Vungle’] = { publisherId = ‘com.coronalabs’ }, – OK

 – [‘plugin.appodeal.beta.Yandex’] = { publisherId = ‘com.coronalabs’ },

 – Verified to cause problems:

 – StartApp

[/lua]

I also noticed that .ipa size increased a lot when changing from the old Appodeal plugin to the new beta-plugin. However, the actual app-size seems not to increase or increase very little. In my case the .ipa size increased 60-70 MB, but the actual app-size checked from App Store Connect/Activity/All Builds did increase only about 5MB.

@etteget

Thnx for the info!

Did your app get approve from Apple?

Is everything ok?

@Vlad

Any comments?

Why is this happening and what does it mean?

Even if it only actually adds 5MB extra it’s huge for a 10MB app.

Also I use StartApp and I would like to keep doing it.

Hello @vlads

I use many plugins and has the same problem with UIWebView

BUT

​when I deleted the appodeal plugin from build settings the problem disappeared

daily build 2020.3577

strings in build settings

[‘plugin.appodeal.base’] = { publisherId = ‘com.coronalabs’ },

[‘plugin.appodeal.GoogleAdMob’] = { publisherId = ‘com.coronalabs’ },

[‘plugin.appodeal.StartApp’] = { publisherId = ‘com.coronalabs’ },

@burdin.a.d3

As mentioned yesterday in previous post, Appodeal cause this problem.

In your case, as etteget has already said, moving to beta version and removing StartApp will solve your problem.

Still, we are waiting Vlad’s post for some official info and answers.

Thank you. It has solved the problem. It seems.

So ipa size was also huge with beta Appodeal, but when I has uploaded to TestFlight the size is normal

Maybe we should wait for Vlad’s answer.

The created ipa file is much larger.

I got the same warning from AppStore as well. I am using Corona SDK 2020.3577 (2020.3.12) and I am using the following plugins:

– Disable corona splash screen

https://docs.coronalabs.com/plugin/CoronaSplashControl/index.html

        [“plugin.CoronaSplashControl”] =

        {

            publisherId = “com.coronalabs”

        },

    – Notification Plugin

    – https://docs.coronalabs.com/guide/events/appNotification/index.html

        [“plugin.notifications”] =

        {

            publisherId = “com.coronalabs”

        },

– Facebook Plugin

https://docs.coronalabs.com/plugin/facebook-v4/index.html

[“plugin.facebook.v4”] =

{

publisherId = “com.coronalabs”,

},

– QR Scanner

http://webcache.googleusercontent.com/search?q=cache:dpPioWiYBXYJ:spiralcodestudio.com/plugin-qrscanner/

[‘plugin.qrscanner’] = 

{

publisherId = ‘com.spiralcodestudio’,

},

– Social Popup

https://docs.coronalabs.com/plugin/CoronaProvider_native_popup_social/index.html

        [“CoronaProvider.native.popup.social”] =

        {

            publisherId = “com.coronalabs”

        },

– Social Popup for iOS

https://coronalabs.com/blog/2015/03/17/tutorial-utilizing-the-activity-popup-plugin-ios/

        [“CoronaProvider.native.popup.activity”] =

        {

            publisherId = “com.coronalabs”,

            supportedPlatforms = { iphone=true, [“iphone-sim”]=true },

        },  

        

– OneSignal Plugin for Notifcation

https://documentation.onesignal.com/docs/corona-sdk-setup

[“plugin.OneSignal”] =

{

publisherId = “com.onesignal”,

},

@Aarbron - my application is still in beta phase so I have not yet tried to get final approval from Apple yet. But got approved for beta distribution.

Spent a couple of hours uploading different versions to AppStore. Here is my list of plugins:

["plugin.utf8"] = { publisherId = "com.coronalabs" }, ['plugin.appodeal.beta.base'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.AdColony'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.AmazonAds'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.AppLovin'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.Appnext'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.Chartboost'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.FacebookAudience'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.Flurry'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.GoogleAdMob'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.InMobi'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.IronSource'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.Mobvista'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.MyTarget'] = { publisherId = 'com.coronalabs' }, --['plugin.appodeal.beta.Ogury'] = { publisherId = 'com.coronalabs' }, -- issue ITMS:90809 --['plugin.appodeal.beta.StartApp'] = { publisherId = 'com.coronalabs' }, -- issue ITMS:90809 ['plugin.appodeal.beta.Tapjoy'] = { publisherId = 'com.coronalabs' }, --['plugin.appodeal.beta.TwitterMoPub'] = { publisherId = 'com.coronalabs' }, -- issue ITMS:90809 ['plugin.appodeal.beta.Unity'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.Vungle'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.beta.Yandex'] = { publisherId = 'com.coronalabs' }, ['plugin.toast'] = { publisherId = 'com.spiralcodestudio' }, ['plugin.reviewPopUp'] = { publisherId = "tech.scotth" }, ['plugin.firebaseAnalytics'] = { publisherId = 'tech.scotth', },

Were you able to tell which plugin is triggering the warning?

Rob

The lines with “-- issue ITMS:90809” are trigerring the issue. Without these lines I was able to upload my build without getting the issue.

Got this issue today, we’re not using plugins other than splash screen. Maybe Apple are deprecating the UIWebView itself?

Here’s the build.settings:

-- Supported values for orientation:-- portrait, portraitUpsideDown, landscapeLeft, landscapeRight settings = { android =     {    usesExpansionFile = false, --true if \> 50MB. Corona fixes everything.         usesPermissions =         {             "android.permission.INTERNET", --            "android.permission.WRITE\_EXTERNAL\_STORAGE", --            "android.permission.GET\_ACCOUNTS", --            "android.permission.RECEIVE\_BOOT\_COMPLETED", --            "com.google.android.c2dm.permission.RECEIVE", --            ".permission.C2D\_MESSAGE",                          -- Optional permission used to display current location via the GPS.             "android.permission.ACCESS\_FINE\_LOCATION",             -- Optional permission used to display current location via WiFi or cellular service.             "android.permission.ACCESS\_COARSE\_LOCATION", --            "android.permission.CALL\_PHONE",          },         usesFeatures =         {             -- If you set permissions "ACCESS\_FINE\_LOCATION" and "ACCESS\_COARSE\_LOCATION" above,             -- then you may want to set up your app to not require location services as follows.             -- Otherwise, devices that do not have location sevices (such as a GPS) will be unable             -- to purchase this app in the app store.             { name = "android.hardware.location", required = false },             { name = "android.hardware.location.gps", required = false },             { name = "android.hardware.location.network", required = false },         },     },          --costs $99/yr     splashScreen =     {         ios = {             enable = false,         },         android = {             enable = true,             image = "Default-568h@2x.png"         }     },     orientation = { default = "portrait", supported = { "portrait", } }, iphone = {         xcassets = "Images.xcassets", plist = { CFBundleDisplayName = "Väglager", CFBundleShortVersionString = "3.8", -- OBS! maste matcha main lua! CFBundleIdentifier = "se.avia.vaglager", --            ITSAppUsesNonExemptEncryption = false, -- This sample doesn't use custom encryption UIStatusBarHidden = true, UIViewControllerBasedStatusBarAppearance = false,              NSLocationWhenInUseUsageDescription = "Appen behöver veta din position för att registrera upplag.",                      NSAppTransportSecurity = { NSAllowsArbitraryLoads = true }, --allow app to access Internet... UIPrerenderedIcon = true, -- set to false for "shine" overlay --UIApplicationExitsOnSuspend = false, -- CAMERA: false to not quit app on suspend! also set variable in main!              } }, }

Yes. Apple does deprecate UI WebView. Corona core does not have it anymore, switched to modern WK WebView, however some plugins may still use it. Identifying those plugins could help to find which plugins need updating.

Hi,

I’m using AppLovin

plugins = { ["plugin.applovin"] = { publisherId = "com.coronalabs" }, },

and Apple is giving me this “Deprecated UIWebView API Usage” warning. Does anyone know if they are updating this plugin soon?

Thanks!

APPLE STORE CONNECT WARNING

ITMS-90809: Deprecated API Usage - Apple will no longer accept submissions of new apps that use UIWebView as of April 30, 2020 and app updates that use UIWebView as of December 2020.

I have managed to solve the problem by removing the Vungle plugin:

        [“plugin.vungle”] =

        {

            publisherId = “com.vungle”

        },

I have kept these other plugins and it has NOT given me problems:

        [“plugin.facebook.v4a”] =

        {

            publisherId = “com.coronalabs”

        },

        [“CoronaProvider.gameNetwork.apple”] =

        {

            publisherId = “com.coronalabs”,

            supportedPlatforms = { iphone=true, [“iphone-sim”]=true },

        },

PLEASE I AGREE WHEN VUNGLE PLUGIN WILL BE UPDATED… THX…

Can confirm still get the UIWebview caution error from Apple using build 2020.3582, only use Vungle Ads so assume Vungle is the cause. Hopefully they submit an update.

@SUPER_TOKI you can’t submit a new app.
Only updates are allowed until this is fixed.

+1

plugins = { [“plugin.applovin”] = { publisherId = “com.coronalabs” }, },

or

plugins = { [“plugin.applovin.paid”] = { publisherId = “com.coronalabs” }, },

Apple began warning developers about migrating to WKWebView, UIWebView’s successor McDVoice