onConnectionFailed mit SIGN_IN_REQUIRED (4)
Ich bin die Entwicklung einer Android-Anwendung, wo ich Sie benutzen will die Google-API. Für die, die ich importiert haben, die google-play-Services-lib Projekt.
Ich bin nach dieser link zu initialisieren GoogleApiClient Objekt.
Mein code:
1) In der onCreate()
Methode Baue ich die GoogleApiClient Objekt:
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.addApi(Plus.API, null)
.addScope(Plus.SCOPE_PLUS_LOGIN)
.build();
2) onStart()
rufe ich mGoogleApiClient.connect()
.
3) Meine Aktivität implementiert
ConnectionCallbacks und OnConnectionFailedListener.
4) Meine onConnectionFailed()
Methode sieht wie folgt aus:
public void onConnectionFailed(ConnectionResult result) {
//in dubug result looks like : ConnectionResult{
//statusCode=SIGN_IN_REQUIRED, resolution=PendingIntent
//{41f8ca70: android.os.BinderProxy@41f8ca10}}
try {
if(!mIntentInProgress && result.hasResolution())
{
mIntentInProgress=true;
result.startResolutionForResult(mActivity, RC_SIGN_IN);
}
} catch (SendIntentException e) {
e.printStackTrace();
}
}
5) Mein onActivityResult()
- Methode enthält:
if (requestCode == RC_SIGN_IN) {
if (!mGoogleApiClient.isConnecting()) {
mGoogleApiClient.connect();
}
}
Wenn ich meine app, die ich bekommen Toastdie besagt, dass ein interner Fehler aufgetaucht. Ich habe das Projekt erstellen in der Google-Konsole.
InformationsquelleAutor der Frage DCoder | 2014-05-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich hatte das gleiche problem.
Aus der Dokumentation:
Der Kunde kann wählen, um fortzufahren, ohne die Verwendung der API oder kann es nennen startResolutionForResult(Aktivität, int) Aufforderung an den Benutzer, um sich anzumelden.
So sollten Sie versuchen, melden Sie sich mit startResolutionForResult () - Funktion
InformationsquelleAutor der Antwort user2642219
Folgen Sie einfach den google - instructionss
UND VORSICHT
Da Sie noch in Entwicklung-Modus, überprüfen Sie, wenn Sie Hinzugefügt haben, Ihre Test-E-Mail-Adresse in das DETAILS zum SPIEL center, die vor der Veröffentlichung des Spiels.
InformationsquelleAutor der Antwort Naskov
Überprüfen Sie, dass Sie das signieren der app mit einem keystore, der in der apk hochgeladen, um Google Play-Entwickler-Konsole (wenn die Tests, die Sie hochladen können, wie alpha und veröffentlichen kann, während es "privat").
Wenn dies nicht, es könnte auch andere Dinge. Stellen Sie sicher, dass Ihr Konto eine E-Mail-Adresse aufgeführt ist, in Tester in den Konto-details-Seite (über das Menü "Einstellungen" mit einem ZAHNRAD-Symbol), und die lizenzierte Reaktion eingestellt ist LIZENZIERT, NICHT zu RESPOND_NORMALLY
InformationsquelleAutor der Antwort Michael Chinen
Dieser Fehler zeigt an, dass die Bedürfnisse der Nutzer zu autorisieren, Sie Ihre app. Es ist ein komplettes workflow für diese, nach dem tutorial auf https://developers.google.com/+/mobile/android/erste-Schritte suchen "onConnectionFailed"
InformationsquelleAutor der Antwort Hounshell
Drive-api aktiviert werden sollen, von Seite der Konsole.
InformationsquelleAutor der Antwort challenger
Nicht sicher, ob dies die besten Antwort, aber es funktionierte für mich. Ich kopierte onConnectionFailed() aus der BasicSamples TakeANumber MainActivity. Es fordert BaseGameUtils zu beheben. Natürlich, dass bedeutet, Sie haben die BaseGameUtils Bibliothek in Ihrem Projekt enthalten und das ist eine andere Dose Würmer. Aber vielleicht bekommen Sie durch mit einer Methode, so dass ich kopiert Sie unter.
Von Google BasicSamples BaseGameUtils.java:
InformationsquelleAutor der Antwort user6627139
wenn Sie nicht mit debug-keys, push-app auf google play als alpha -, fügen Sie sich als tester und die MEISTEN wichtig - befolgen Sie die "Opt-in" - link auf der Aplha Seite und BESTÄTIGEN, dass Sie die tester.
InformationsquelleAutor der Antwort Max
Möchte ich meine Erfahrungen mit dieser. Mein Fall war das bei der Verwendung von Google-Play-Dienste für Google Play Games. Ich war auch immer der onConnectionFailed geben SIGN_IN_REQUIRED Fehler. Endlich merke ich, ich hatte nicht "Veröffentlicht" meine Spiel-Einstellungen in die Entwickler-Konsole. Nicht zu verwechseln mit der Veröffentlichung einer "alpha" oder "beta" - version Ihrer apk. Ich meine die eigentliche Google Play Games "Spiel", die Sie erstellen, und der link zu dem Spiel APK.
InformationsquelleAutor der Antwort Jonathan
Ich hatte Dasselbe problem und gelöst mit dieser Lösung
Ich hatte eigentlich sehr alte version von google play-Dienste-Bibliothek, so dass ich aktualisiert Sie mit den neuesten google-play-Dienst-Bibliothek zu compile 'com.google.android.gms:play-Dienste:11.0.4' von meiner vorherigen version der library zur Unterstützung Ihr android-SDK und pflegen compileSDKVersion und targetSDKVersion in gradle:app.
fügen Sie google-drive aktiviert API_KEY im manifest.und versuchen Sie es erneut
InformationsquelleAutor der Antwort Anjali
für meine Sache habe ich falsch verwendet release-SHA1-Schlüssel zu generieren-API im developer-Konsole.
Dann erstellt SHA1-Schlüssel (mit dem debug.keystore und aktualisiert in mein api-Anmeldeinformationen.
Seine arbeiten begonnen.
InformationsquelleAutor der Antwort Anand saga