react-native-oauth icon indicating copy to clipboard operation
react-native-oauth copied to clipboard

Google oAuth not working in Android

Open vijayst opened this issue 7 years ago • 2 comments

Google oAuth is not working for Android. I get an error - user agent not allowed in Android.

screen shot 2017-08-02 at 6 52 43 pm

vijayst avatar Aug 02 '17 13:08 vijayst

This is due to Google disallowing embedded webviews for authorization: https://developers.googleblog.com/2016/08/modernizing-oauth-interactions-in-native-apps.html.

The Android implementation in this package uses a webview. It needs to be updated to use a Chrome tab, as described by Google. There's a hack in #130 to make it work, but that's going against Google's instructions on how to properly do authorization on android.

dieseldjango avatar Aug 14 '17 15:08 dieseldjango

Better using the user's actual UserAgent and replace wv from it instead of the hard coded one mWebView.getSettings().setUserAgentString(mWebView.getSettings().getUserAgentString().replace("; wv", ""));

Ref: https://developers.googleblog.com/2016/08/modernizing-oauth-interactions-in-native-apps.html

P.S. I have open the PR for this issue, however this library seems no longer supported by the original author, you may consider using other OAuth RN library.

ericchan3721 avatar Apr 12 '21 13:04 ericchan3721