New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Google SignIn Fails with code 10 (on Android) #360
Comments
I have also been getting the same error response for the past few days; I have been trying to fixed the problem but no breakthrough and I learnt that the response code (10) means it is a developer problem. |
Same issue. |
Hi all. Error code 10 is This almost certainly means you have not properly registered your SHA1 and Package Name in the Google API console: If you are 100% sure that you have done this correctly, make sure that your I am going to close this issue since that's the best advice I can provide with the limited information above. |
I just cross-check my SHA1 and discovered a mistake. I have fixed it and the Google sign-in is working as expected. My initial SHA1 was gotten via the terminal while I got the present one via Android studio. Maybe @makeze and @sudarsangp can try something like that if it works. |
@samtstern sorry for the trouble it was indeed a misconfiguration issue. @ibnahmadbello thanks for the suggestion. I still have a question though. I am trying out SignInActivity and I don't see any usage of |
@sudarsangp the web server client ID is used to mint the ID token, so that it's signed for the right "audience". It's actually not required for signing in, but we recommend that after you sign in you use the ID token to authenticate to your server or to another service (like Firebase Auth) if you need to (rather than an access token, which is dangerous) |
I am new to android development and had opted in for google play app signing. My debug release worked fine but when publishing to internal test release it would fail. I realized the app is being resigned upon uploading to google so I registered using signing keys from google play portal and that fixed it. Oddly enough, examining the gradle signing report would only show sha1 for debug builds and not for release builds no matter I had selected the release keystore. Thankfully for now it is not an issue using google play signing. |
Google is getting more and more ugly, they're making simple things complicated. The problem is the third key, 1、the debug key 2、the release key 3、Google Play App signing key You need THREE keys to figure out ONE Google SignIn. Does facebook also need three keys? Maybe one day google will need 30 keys. |
thanks @samtstern |
It works for me, thanks ;) |
hi @ibnahmadbello I had the same problem when I was using sh1 generated from the commande line. but when I used android studio I get an other key and it work. |
Hello @rady-ben , what is your way to get sha1 from android studio? |
优秀 |
This error might happen if you are not using same project at console.developers.google and console.firebase.google.com. If project is same at both console make sure you have add your SHA1 Key properly. Get SHA1 from Android studio. Open Android Studio |
@technologyshare there is no Gradle Bar. How to turn it on? |
@technologyshare: do we need to submit Oauth screen? |
|
if you are integrating it from web than you need to pass oauth screen, if you are doing only by phone. No Need |
When i release my app to playstore in beta mode the same server_client_ID doesn't works and i get error in:
ApiException: 10 |
I'm quite new to Android development and was struggling with the error as well. I used Android Studio terminal to get the fingerprint. First I created a debug one by calling |
I have an application giving this error but it already had the key.jks and I can't reuse it? |
I needed to use the id-token, so I created a web-application oauth credential, used it and this is how I create the sign-in: fun prepareIntent(context: Context): Intent {
val googleClientId = context.getString(R.string.server_client_id)
val options =
GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestServerAuthCode(googleClientId)
// .requestEmail()
.build()
val mSignInClient = GoogleSignIn.getClient(context, options)
return mSignInClient.signInIntent
} And to get the id-token, I have this function: @NonNull
@WorkerThread
public static String setUp(final Context context, @Nullable final String serverAuthCode) throws IOException {
final HttpTransport httpTransport = new NetHttpTransport();
final JacksonFactory jsonFactory = JacksonFactory.getDefaultInstance();
final String redirectUrl = "urn:ietf:wg:oauth:2.0:oob";
final String clientId = context.getString(R.string.server_client_id);
final String clientSecret = context.getString(R.string.client_secret);
final GoogleTokenResponse tokenResponse = new GoogleAuthorizationCodeTokenRequest(
httpTransport, jsonFactory,
clientId, clientSecret,
serverAuthCode, redirectUrl).execute();
final String accessToken = tokenResponse.getAccessToken();
return accessToken;
} So I call this to reach this function and get it (in background thread) : GoogleSignIn.getLastSignedInAccount(this)
val serverAuthCode = result.serverAuthCode
setUp(applicationContext, serverAuthCode) This works, but for some reason, when I run the app and choose the Google account, I also get a dialog of "confirm your choices" : How so? Is it even the correct way to get the id-token? I couldn't find where I got this code from (an old code)... |
Hi I am facing this issue. flutter/flutter#33393 (comment). I have raised it. Can someone take a look. |
My issue, root cause is SHA1! |
Worked for me. Thanks brother |
Strange, but this worked! |
I had the same problem, I recomend to follow this: CodetrixStudio/CapacitorGoogleAuth#15 (comment) |
In my case, I tried both from terminal and Android Studio. Both are the same and not working. |
Thank you. This fixed my problem. After upload first bundle to internal test i started to get an error with google sign in. What i done to fix that problem:
|
First Create and add Android Fingerprint in Android Client ID And Create A new Web Application OAuth Client ID
Use Web Application OAuth Client ID 👍👍👍 |
This solved it for me https://www.youtube.com/watch?v=SdYp5JdMvs0 |
"Web Application" name confuse me, but it works |
Also watch out for this |
In my case, everything worked with Client ID from https://console.cloud.google.com. But after adding requestServerAuthCode I started getting errorCode 10 and it turned out that I needed to use oauth_client from fireabse google-services.json which was a different string... |
I just came across this thread, as I see the same error in our app. When I add the SHA1 from our release keystore to the Google Cloud Console, the signin process os working when running a release build on device or emulator. When running a debug build on emulator, I see this error code 10. The other way around, when adding the SHA1 from the debug keystore, the sign in process stops working when running a release build. So my question is: how can I make sure that I am able to test the login stuff in a debug build AND people using the live app (when it is released on play store) can use the sign in stuff at the same time? As I can only add one SHA1 to the Google Cloud Console. Btw, I am not using Firebase. Thank you in advance! |
When I tried to use the New Google Sign-In API (https://developers.google.com/identity/sign-in/android/sign-in-identity), I found that on system versions lower than Android 10, always Error: com.google.android.gms.common.api.ApiException: 10: Caller not whitelisted to call this API., but there is no such error on Android 10 and Android 11 and above phones. I'm currently using Google Sign-In for Android (legacy) (https://developers.google.com/identity/sign-in/android/sign-in) I've also never encountered such an error, I don't understand Why? My SHA1 is configured correctly |
I was getting this error and I had checked the SHA's and Web Client stuff were all set up correctly. I must have checked this 20 times. Everything matched in firebase, google developer console, and google-services.json, but yet google sign in was not working. I finally figured it out and wanted to post this for others (and probably my future self when I run across this again). My issue was I have 2 firebase projects. One for stage, and one for prod. Stage worked fine but prod did not. Yes, I confirmed I had all the right SHA's set up and everything (sort of). I realized that the SHA I added to firebase was for my production keystore release version, but I was running the app locally in debug mode with my stage keystore file. I quick google on how to run it in release mode locally gave me this command:
Everything is working now. |
hii all if you are facing the issue using google login with code 10,then follow the steps below you may find your solution hope your problem might be solve |
For whom use the AppCenter to distribute the APK. The AppCenter by somehow overrides the release keystore from project, they use their own keystore. You can get this SHA1 from their keystore by downloading the apk and run |
This is still a hot issue samtstern. Closing this makes no sense |
Step 1: Describe your environment
Step 2: Describe the problem:
Throws Error after choosing Google account
com.google.samples.quickstart.signin W/SignInActivity: signInResult:failed code=10
Steps to reproduce:
The text was updated successfully, but these errors were encountered: