firebase / FirebaseUI-iOS

iOS UI bindings for Firebase.
Apache License 2.0
1.51k stars 475 forks source link

ITMS-90809: Deprecated API Usage - FirebaseUI/Google #771

Closed damienpraca closed 5 years ago

damienpraca commented 5 years ago

Hi,

The latest FirebaseUI/Google (8.0.4) is using GoogleSignIn 4.4.0 (and not 5.0.0) and is not compliant anymore with the new Apple policies because of use of UIWebView API.

When trying to submit the app to Apple on AppConnect, they drop a no go warning message, preventing from being reviewed successfully :

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.

Steps to reproduce :

$ pod install
Installing FirebaseUI 8.0.4
Installing GoogleSignIn (4.4.0)
Installing GoogleToolboxForMac (2.2.1)

but when forcing GoogleSignIn to 5.0.0 with pod 'GoogleSignIn', '5.0.0'

$ pod install
Analyzing dependencies
[!] CocoaPods could not find compatible versions for pod "GoogleSignIn":
  In Podfile:
FirebaseUI/Google was resolved to 8.0.4, which depends on
      GoogleSignIn (~> 4.0)
GoogleSignIn (= 5.0.0)

then

$ grep -r "UIWeb" .
./Pods/GoogleSignIn/CHANGELOG.md:- Supports sign-in via UIWebView rather than app switching to a browser,
Binary file ./Pods/GoogleSignIn/Frameworks/GoogleSignIn.framework/GoogleSignIn matches

FirebaseUI/Google needs to be compatible with the latest release of GoogleSignIn 5.0.0 already available as a pod.

google-oss-bot commented 5 years ago

I found a few problems with this issue:

morganchen12 commented 5 years ago

@renkelvin, iirc there aren't any code changes necessary, I just need to bump the dependency version in CocoaPods. Can you confirm?

damienpraca commented 5 years ago

@renkelvin, iirc there aren't any code changes necessary, I just need to bump the dependency version in CocoaPods. Can you confirm?

If FirebaseUI/Google code base is compatible with GoogleSignIn 5.0.0, then yes it is just a dependency bump in CocoaPods

morganchen12 commented 5 years ago

I'll take care of this today. Thanks for reporting!

damienpraca commented 5 years ago

Have you got a chance to look at it, is the dependency bump worked or it needs more integration work? Thanks

angeria commented 5 years ago

I'm also wondering about the state of this issue since the dependancy is not bumped to 5.0.0 yet.

morganchen12 commented 5 years ago

Apologies for the delay, this has been released. Please update your FirebaseUI version and let me know if this is still an issue.

sanchofox commented 5 years ago

Installing FirebaseUI with CocoaPods, I still have GoogleSignIn version 4.4.0 instead of 5.0.0. Does anyone have the same issue?

And If I run the following command in the terminal: grep -r "UIWeb" . | grep Binary

I got this answer: Binary file ./Pods/GoogleSignIn/Frameworks/GoogleSignIn.framework/GoogleSignIn matches

Apple will not accept my app with the UIWebView API.

angeria commented 5 years ago

I updated to FirebaseUI 8.1.0 and GoogleSignIn got updated to 5.0.0 as well. The grep match for UIWebView in GoogleSignIn has disappeared.

Make sure you use pod update and not pod install if you did that @sanchofox

sanchofox commented 5 years ago

Ok, thank you! Solved!

damienpraca commented 5 years ago

Thanks it is solved

RanjeetStiga commented 5 years ago

./Pods/GoogleSignIn/CHANGELOG.md:- Supports sign-in via UIWebView rather than app switching to a browser, when grape UIWebView

Using GoogleSignIn 5.0.0

Nikoloutsos commented 4 years ago

I'm using: pod 'GoogleSignIn' I tried to use the following line pod 'GoogleSignIn', '~> 5.0.0' Terminal output: [!] CocoaPods could not find compatible versions for pod "GoogleSignIn": In Podfile: GoogleSignIn (~> 5.0.0)

What should I do?

morganchen12 commented 4 years ago

Run pod repo update.

yesnoyes commented 4 years ago

GoogleSignIn is still using AppAuth, which includes UIWebView. When would this be resolved?

yesnoyes commented 4 years ago

Appstore is keep giving warning after uploading App to Appstore -

Dear Developer,

We identified one or more issues with a recent delivery for your app, "XXXX. Your delivery was successful, but you may wish to correct the following issues in your next delivery:

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. Instead, use WKWebView for improved security and reliability. Learn more (https://developer.apple.com/documentation/uikit/uiwebview).

After you’ve corrected the issues, you can upload a new binary to App Store Connect.

mtfuji25 commented 4 years ago

Versions higher than GoogleSignIn 4.4.0 produce errors when building, version 4.4.0 works fine without any error, but the problem is that it uses UIWebView, I would like UIWebView of 4.4.0 replaced with WKWebView.

akinncar commented 4 years ago

Versions higher than GoogleSignIn 4.4.0 produce errors when building, version 4.4.0 works fine without any error, but the problem is that it uses UIWebView, I would like UIWebView of 4.4.0 replaced with WKWebView.

Same here, some update?

morganchen12 commented 4 years ago

AppAuth references UIWebView in a header comment only; you can either appeal your app rejection to Apple or you can remove the header comment manually and resubmit.

See this issue: https://github.com/openid/AppAuth-iOS/issues/449

yeleleo commented 4 years ago

5.0.2 is available, just update your Podfile to pod 'GoogleSignIn', '5.0.2' and run $ pod install

Here is how to migrate from 4.x: https://developers.google.com/identity/sign-in/ios/quick-migration-guide

itsmasabdi commented 2 years ago

@kazunetakeda25

Versions higher than GoogleSignIn 4.4.0 produce errors when building, version 4.4.0 works fine without any error, but the problem is that it uses UIWebView, I would like UIWebView of 4.4.0 replaced with WKWebView.

I'm having the exact same issue, have even tried importing this repo and use 5.0.2 based on https://github.com/googlesamples/google-signin-unity/issues/122 but still no luck.

Any help on this?