From 0b8b6742387501ece0c80f1088c8509b5a0dd1d1 Mon Sep 17 00:00:00 2001 From: Matthieu Bachelier Date: Fri, 24 Nov 2017 10:06:58 +0100 Subject: [PATCH] Merge PR 121, fix user agent, fix full screen webview --- .../oauth/OAuthManagerDialogFragment.java | 3 +-- .../fullstack/oauth/OAuthManagerModule.java | 26 +++++++------------ .../oauth/OAuthManagerProviders.java | 12 ++------- 3 files changed, 12 insertions(+), 29 deletions(-) diff --git a/android/src/main/java/io/fullstack/oauth/OAuthManagerDialogFragment.java b/android/src/main/java/io/fullstack/oauth/OAuthManagerDialogFragment.java index 13e238f..12202bb 100644 --- a/android/src/main/java/io/fullstack/oauth/OAuthManagerDialogFragment.java +++ b/android/src/main/java/io/fullstack/oauth/OAuthManagerDialogFragment.java @@ -109,7 +109,6 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle sa mWebView.setVisibility(View.VISIBLE); mWebView.getSettings().setJavaScriptEnabled(true); mWebView.getSettings().setDomStorageEnabled(true); - mWebView.getSettings().setUserAgentString("Mozilla/5.0 Google"); LayoutParams layoutParams = this.getFullscreenLayoutParams(context); @@ -172,7 +171,7 @@ private LayoutParams getFullscreenLayoutParams(Context context) { realHeight = display.getHeight(); } - return new LayoutParams(realWidth, realHeight-convertDpToPixel(50f,context)); + return new LayoutParams(realWidth, realHeight); } diff --git a/android/src/main/java/io/fullstack/oauth/OAuthManagerModule.java b/android/src/main/java/io/fullstack/oauth/OAuthManagerModule.java index 35777a4..8cf9572 100644 --- a/android/src/main/java/io/fullstack/oauth/OAuthManagerModule.java +++ b/android/src/main/java/io/fullstack/oauth/OAuthManagerModule.java @@ -6,8 +6,6 @@ import android.support.annotation.Nullable; import android.util.Log; -import com.google.gson.Gson; - import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.Callback; import com.facebook.react.bridge.ReactApplicationContext; @@ -400,18 +398,18 @@ private WritableMap accessTokenResponse( ) { WritableMap resp = Arguments.createMap(); WritableMap response = Arguments.createMap(); - Map accessTokenMap = new Gson().fromJson(accessToken.getRawResponse(), Map.class); Log.d(TAG, "Credential raw response: " + accessToken.getRawResponse()); resp.putString("status", "ok"); resp.putBoolean("authorized", true); resp.putString("provider", providerName); - String uuid = (String) accessTokenMap.get("user_id"); + + String uuid = accessToken.getParameter("user_id"); response.putString("uuid", uuid); - String oauthTokenSecret = (String) accessTokenMap.get("oauth_token_secret"); + String oauthTokenSecret = (String) accessToken.getParameter("oauth_token_secret"); - String tokenType = (String) accessTokenMap.get("token_type"); + String tokenType = (String) accessToken.getParameter("token_type"); if (tokenType == null) { tokenType = "Bearer"; } @@ -422,7 +420,6 @@ private WritableMap accessTokenResponse( credentials.putString("access_token", accessToken.getToken()); credentials.putString("access_token_secret", oauthTokenSecret); credentials.putString("type", tokenType); - // credentials.putString("scope", accessToken.getScope()); credentials.putString("consumerKey", consumerKey); response.putMap("credentials", credentials); @@ -440,18 +437,13 @@ private WritableMap accessTokenResponse( ) { WritableMap resp = Arguments.createMap(); WritableMap response = Arguments.createMap(); - Map accessTokenMap = new Gson().fromJson(accessToken.getRawResponse(), Map.class); resp.putString("status", "ok"); resp.putBoolean("authorized", true); resp.putString("provider", providerName); - try { - String uuid = (String) accessTokenMap.get("user_id"); - response.putString("uuid", uuid); - } catch (Exception ex) { - Log.e(TAG, "Exception while getting the access token"); - ex.printStackTrace(); - } + + String uuid = accessToken.getParameter("user_id"); + response.putString("uuid", uuid); WritableMap credentials = Arguments.createMap(); Log.d(TAG, "Credential raw response: " + accessToken.getRawResponse()); @@ -459,7 +451,7 @@ private WritableMap accessTokenResponse( credentials.putString("accessToken", accessToken.getAccessToken()); String authHeader; - String tokenType = (String) accessTokenMap.get("token_type"); + String tokenType = accessToken.getTokenType(); if (tokenType == null) { tokenType = "Bearer"; } @@ -470,7 +462,7 @@ private WritableMap accessTokenResponse( } String clientID = (String) cfg.get("client_id"); - String idToken = (String) accessTokenMap.get("id_token"); + String idToken = accessToken.getParameter("id_token"); authHeader = tokenType + " " + accessToken.getAccessToken(); credentials.putString("authorizationHeader", authHeader); diff --git a/android/src/main/java/io/fullstack/oauth/OAuthManagerProviders.java b/android/src/main/java/io/fullstack/oauth/OAuthManagerProviders.java index d91b4b5..86c64c3 100644 --- a/android/src/main/java/io/fullstack/oauth/OAuthManagerProviders.java +++ b/android/src/main/java/io/fullstack/oauth/OAuthManagerProviders.java @@ -268,19 +268,11 @@ private static ServiceBuilder _oauth2ServiceBuilder( builder.scope(scopeStr); } - boolean rawScopes = (cfg.containsKey("rawScopes") && ((String)cfg.get("rawScopes")).equalsIgnoreCase("true")); - if (opts != null && opts.hasKey("scopes")) { scopes = (String) opts.getString("scopes"); - String scopeStr = null; - - if (!rawScopes) - scopeStr = OAuthManagerProviders.getScopeString(scopes, ","); - else - scopeStr = scopes; - + String scopeStr = OAuthManagerProviders.getScopeString(scopes, ","); builder.scope(scopeStr); - } + } if (callbackUrl != null) { builder.callback(callbackUrl);