2016-04-07 11 views
0

Ich bekomme ein Problem für meine aktuelle App. Mein OAuth2.0 der SHA1 ist korrekt und wird aus der Keystore-Datei der Release-Version generiert. Mein Problem ist ich erhalte resultCode = 0 jedes Mal onActivityResult. Ich drucke Wert des Vorsatzes und bekam unter: googleSignInStatus = Status {status = INTERNAL_ERROR, Auflösung = null} Aber, wenn ich es auf den Debug-Modus Login laufen gut funktionierend und für diesen Fall Wert Vorsatz ist: googleSignInAccount = com .google.android.gms.auth.api.signin.GoogleSignInAccount @ 31976389]Google Signin funktioniert nicht auf Release-Version von Android

Weiß jemand, wie er dieses Problem lösen kann. HINWEIS: Irgendwo fand ich einen Beitrag, den sie empfehlen, E-Mail und Projektname auf OAuth Contest Screen zu setzen; Ich habe das schon ausprobiert und arbeite immer noch nicht.

+0

SHA1 Schlüssel für die Freigabe erhalten Build-> SHA1 Schlüssel in api-Konsole. Prost – Aks4125

+0

Vielen Dank für Ihre Antwort. Aber wie bereits erwähnt SHA1 Schlüssel der Release-Version war in einer Konsole. – silwalprabin

Antwort

1

Offensichtlich zuerst überprüfen Sie Ihre Freigabe sha1 Schlüssel ist korrekt oder nicht. Aber das Problem war anders. Ich verwende neue Google Play-Dienste (z. B. "com.google.android.gms: play-services: 8.4.0"). Das Problem könnte durch Ändern des GoogleSignInOption-Objekts gelöst werden. Statt:

GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) 
        .requestEmail() 
     .requestIdToken("YOUR_WEB_API_ID.apps.googleusercontent.com") 
        .build(); 

Ich benutze:

GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) 
       .requestScopes(new Scope(Scopes.PLUS_LOGIN)) 
       .requestScopes(new Scope(Scopes.PLUS_ME)) 
       .requestEmail() 
       .build(); 

Dieser Fehler Rückkehr INTERNAL_ERROR status = löst. Dann ist dieses gso Objekt konnte GoogleApiClient für die Erstellung verwendet werden, wie unten dargestellt:

mGoogleApiClient = new GoogleApiClient.Builder(this) 
       .enableAutoManage(this, this) 
       .addApi(Auth.GOOGLE_SIGN_IN_API,gso) 
       // .addApi(Plus.API, null) 
       .addConnectionCallbacks(this) 
       .addOnConnectionFailedListener(this) 
       // .addScope(Plus.SCOPE_PLUS_LOGIN) 
       .build(); 
Verwandte Themen