tidev / kitchensink-v2

An Alloy-based Titanium sample app using ES6+ and more!
Other
78 stars 49 forks source link

[Deprecated API Usage] UIWebView #48

Open TheeAndre opened 5 years ago

TheeAndre commented 5 years ago

Hi Team, Is there any way to resolve this deprecated API issue on the app?

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.

ewanharris commented 5 years ago

@TheeAndre what SDK version are you building with? That should be fixed in 8.2.0 with TIMOB-27367

TheeAndre commented 5 years ago

@TheeAndre what SDK version are you building with? That should be fixed in 8.2.0 with TIMOB-27367

I'm building with 8.2.0 . Just tried to TestFlight KitchenSink-v2 & got that error.

TheeAndre commented 5 years ago

Am I doing this right?

Screenshot 2019-10-22 at 13 55 03
TheeAndre commented 5 years ago

Is there anyone who can assist me in implementing Ti.WKWebView on this repo? My attempts don't seem to be working. Ti.WKWebView

m1ga commented 5 years ago

@TheeAndre WKWebView is the default since 8.0.0 so you don't need this module at all.

What are the versions of your other modules? Are they up to date? Eg. it could be the Facebook module that is causing the error.

TheeAndre commented 5 years ago

The SDK is upto date as well as all my apps. i loaded this repo as is & the warning came up. I had to add the module for the warning to disappear. TestFlight wouldn't take the build without the wkwebview module.

m1ga commented 5 years ago

Interesting:

$ nm KitchenSink | grep UIWeb
         U _OBJC_CLASS_$_UIWebView
                 U _OBJC_CLASS_$_UIWebView
$ for framework in Frameworks/*.framework; do   fname=$(basename $framework .framework);   echo $fname;   nm $framework/$fname | grep UIWeb; done
-> TitaniumKit

If I run it for another app the first output is empty and the last one will print out multiple libraries but I guess they are false positives since the app is approved and inside the store. But not sure why it has the first hit. That shouldn't be there

TheeAndre commented 5 years ago

Thanks for the feedback. Maybe you can create a PR to update & remove it from the repo?

m1ga commented 5 years ago

I did another test and it looks like I was correct with the first guess: if I remove ti.identity and ti.facebook it doesn't find the UiWebView stuff.

When searching in the facebook module you'll find: https://github.com/appcelerator-modules/ti.facebook/blob/46d53182e5a44ae9a6eca1963f05847638a5c902/ios/platform/Bolts.framework/Headers/BFWebViewAppLinkResolver.h#L16 Edit: https://github.com/facebook/facebook-ios-sdk/issues/1035 it was removed in Facebook version 5.5.0

I don't use those modules in my store app.

So it is not a KitchenSink issue

TheeAndre commented 5 years ago

Hey @ewanharris, will you have a look at this?

Thanks @m1ga