问题
I\'m following google instruction to add sign in with google button to my app. If I request sign in without requestEmail()
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.build();
It returns the result as successful. But if I request email, it occures an INTERNAL_ERROR as the status.
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestEmail()
.build();
returns
E/Result: Status{statusCode=INTERNAL_ERROR, resolution=null}
I\'m stuck here. Any help highly appreciated. Please comment if you need further information about the code. Thank you
回答1:
If you get error code 8 (INTERNAL_ERROR), please double check your app registration in dev console. Note that every registered Android client is uniquely identified by the (package name, Android Signing Certificate SHA-1) pair. If you have multiple package names / signing certificate for your debug and production environments, make sure to register every pair of them. To verify:
- Open the Credentials page and select your project
- Make sure every pair has an Android typed OAuth 2.0 client IDs. To create a new OAuth 2.0 client ID for your Android client, select New Credentials->OAuth2 Client ID from the dropdown, select Android and input your Package name / Signing-certificate fingerprint there.
To get your signing key certificate SHA-1:
Standard Debug Key
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Other (Custom) Key
keytool -list -v -keystore $YOUR_KEYSTORE_LOCATION
来源:https://stackoverflow.com/questions/34942692/occured-an-internal-error-when-requestemail-from-googlesigninoptions-android