webentwicklung-frage-antwort-db.com.de

Google-Anmeldung funktioniert nach Veröffentlichung im Play Store nicht

Ich habe this durchlaufen, und was den Prozess angeht, habe ich das getan.

Aber als ich die App aus dem Play Store installiert habe, kann ich mich nicht mit der Schaltfläche google sign in Anmelden.

Ich habe Firebase für die Google-Anmeldung verwendet. Wenn ich auf die Anmeldeschaltfläche klicke, wird die Option zum Auswählen des Kontos angezeigt, es erfolgt jedoch keine Anmeldung oder keine Aktion.

Also, wo gehe ich möglicherweise falsch?

33
arqam

Wenn Sie eine Apk in den Play Store hochladen, erstellt Play Store einen neuen SHA1-Schlüssel mit dem Namen "App-Signaturzertifikat". Sie erhalten diesen SHA1 und speichern ihn in Ihrer Konsole oder in Ihrem Firebase-Konto (je nach Bedarf).

Das neue SHA1 finden Sie unter Freigegebenes Management -> App Sigining auf Ihrer Spielkonsole.

[enter image description here]

155
Prinkal Kumar

pdate: Google hat das Verhalten beim Hochladen von APK geändert, Antwort unten prüfen!

Geben Sie APK frei und debuggen Sie APK hat unterschiedliche SHA1- und unterschiedliche API-Schlüssel für Google-Dienste. Beide müssen in Firebase Console -> Projekteinstellungen hinzugefügt werden. Dann lade google-services.json Fügen Sie es von hier aus dem Projekt hinzu und kompilieren Sie es mit dem freigegebenen Keystore mit der Option "Signierte APK erstellen". Das sollte funktionieren

34
Dima Rostopira

Das Problem wurde verursacht, als die Google Play-App-Signatur für meine App aktiviert wurde. Durch das Signieren der Google Play App wird der SHA-1-Zertifikat-Fingerabdruck (von meinem Keystore) in den eigenen SHA-1-Zertifikat-Fingerabdruck geändert.

Das Update:

  1. Gehe zu https://play.google.com/apps/publish/
  2. Klicken Sie auf Ihre Anwendung >> Release Management >> App Signing.

Sie sehen "App Signing Certificate" und "Upload Certificate"

  1. Kopieren Sie das SHA-1 aus "App Signing Certificate". (DAS TOP EINS)
  2. Gehe zu https://console.firebase.google.com/
  3. Klicken Sie auf Ihre Anwendung >> Einstellungen [Getriebesymbol rechts neben der Projektübersicht] (oben auf dem Bildschirm) >> Projekteinstellungen >> Allgemein [Registerkarte] >> Fingerabdruck hinzufügen
  4. Fügen Sie das SHA-1-App-Signaturzertifikat ein. Speichern.

Alles repariert!

7
Alan Nelson

Problem passiert weil

1) Wenn Sie eine App über die Google Play-Konsole erstellen/veröffentlichen, können Sie die Google Play-App-Signatur aktivieren. Wenn Sie es aktivieren, wird es angezeigt

Google Play App Signing ist für diese App aktiviert.

enter image description here

dann ändern sich Ihre Upload-Zertifikatdetails und Sie müssen die SHA-1-Zertifikatdetails an den entsprechenden Stellen neu schreiben.

2) Sie haben debuggen Details zum Schlüsselspeicher-/SHA-1-Zertifikat angegeben anstelle von RELEASE Details zum Zertifikat

3) Fehler beim Generieren von Zertifikaten.

Lösung

1) Gehe zu Google Play-Konsole

Relese Management -> App signieren

dann sehen Sie zwei Arten von Zertifikaten

1- Zertifikat hochladen (Ihr App-Zertifikat wird beim Generieren von signiertem Apk bereitgestellt)

2- App-Signaturzertifikat (da Sie die Google Play-App-Signatur aktiviert haben, sodass neue Zertifikatdetails für Ihre veröffentlichte Apk bereitgestellt wurden)

sie müssen die Details des hochgeladenen Zertifikats durch neue Details ändern, die von Google Play bereitgestellt wurden, wo immer Sie es zuvor verwendet haben. wie Google-Anmeldung integrieren (SHA-1 von OAuth-Client ändern), Facebook-Anmeldung ( Schlüssel-Hash ändern (Schlüssel-Hash mit SHA-1 generieren, dies verwenden link oder kopiere den von Facebook gelieferten Key-Hash (Login Error Screen), Firebase etc.

2) Release SHA-1/keyHash bereitstellen

create /Verwenden Sie die Keystore-Details der signierten apk.

mit Eingabeaufforderung:

google/Firebase SHA-1:

keytool -exportcert -keystore path-to-debug-or-production-keystore -list -v

facebook Release Key Hash:

keytool -exportcert -alias <user alias name> -keystore < keystore path> | <openssl-path> sha1 -binary | <openssl-path> base64   

wenn Sie nach einem Passwort gefragt werden, geben Sie Ihr signiertes apk-Passwort für den Keystore ein.

3

Es gibt drei Arten von SHA1, die für einen App-Lebenszyklus erforderlich sind, wenn Sie Firebase verwenden

  • - SHA1 debuggen
  • - SHA1 freigeben
  • - SHA1 signieren (wird aus dem Play Store bezogen)

Sie müssen die Signatur SHA1 zur Firebase hinzufügen, nachdem Sie Ihre Anwendung hier veröffentlicht haben. Ich füge zwei Screenshots bei. Bitte schauen Sie sich diese an. Die rot markierten Zertifikate sind erforderlich enter image description here

enter image description here

3
Muhammed Fasil

Wenn Sie beim Veröffentlichen Ihrer App "Google Play App Signing" aktiviert haben, haben Sie es jetzt wahrscheinlich mit zwei Fingerabdrücken zu tun:

Diejenige, die aus Ihrem lokalen Keystore stammt (keytool -exportcert -keystore path-to-production-keystore -list -v) und als "Upload-Zertifikat" bezeichnet wird.

Das neue Zertifikat, das von Google generiert wurde, als Sie die Signatur aktiviert haben (das "Signaturzertifikat").

Der Konflikt mit dieser Situation besteht darin, dass Sie möglicherweise zwei OAuth 2.0-Client-IDs erhalten:

  • Die, die Sie vor dem Veröffentlichen Ihrer App (und vor dem Aktivieren der Google-Signatur) erstellt haben, ist in der Tat die "richtige".

  • Eine NEUE, die von Google erstellt wurde, als Sie Google Signing aktiviert haben.

Sie können diesen Umstand überprüfen: Google Play Console -> Spiele-Services -> Wählen Sie Ihre App -> API-Konsolenprojekt -> Anmeldeinformationen -> OAuth 2.0-Client-IDs

LÖSUNG

Damit Google Sign-in (und alle damit verbundenen Games Services-Funktionen) funktioniert, musste ich den Fingerabdruck meiner bereits vorhandenen OAuth2-Client-ID (die ich vor der Veröffentlichung meiner App erstellt habe) korrigieren.

  1. Suchen Sie nach der "richtigen" OAuth 2.0-Client-ID: Google Play Console -> Spiele-Services -> Wählen Sie Ihre App aus -> Verknüpfte Apps -> Wählen Sie Ihre App aus -> Beachten Sie die " OAuth2 Client ID "am unteren Rand.

  2. Suchen Sie nach dem "Signing" -Zertifikat: Google Play Console -> Games Services -> Wählen Sie Ihre App -> API Console-Projekt -> Anmeldeinformationen -> OAuth 2.0-Client-IDs -> "Android-Client für XXXXXX (vom Google-Dienst automatisch erstellt) "-> Notieren Sie sich den Wert (xx: xx: xx: etc ....) Kommentar: Um diesen Wert in meinem anderen zu verwenden OAuth = 2.0 Client ID, ich musste es durch eine Dummy-Nummer ersetzen. Andernfalls wird folgende Fehlermeldung angezeigt: "Zertifikat wurde bereits in einem anderen Projekt verwendet".

  3. Wechseln Sie zu Ihrer bereits vorhandenen OAuth2-Client-ID: Google Play Console -> Spiele-Services -> Wählen Sie Ihre App -> API-Konsolenprojekt -> Anmeldeinformationen -> OAuth 2.0-Client-IDs -> Auswählen " OAuth 2.0-Client-ID "ab Schritt 1. Aktualisieren Sie den Zertifikatswert mit dem aus Schritt 2.

Dies löste mein Problem. Der Multiplayer funktioniert in meiner App (Match4App) einwandfrei.

1
Pablo Alfonso

So fügen Sie vorhandene Antworten hinzu, sobald Sie den neu erstellten SHA1 haben:

Gehe zu https://console.firebase.google.com :

  1. Projekt auswählen
  2. Projektübersicht
  3. Projekt Einstellungen
  4. FINGERABDRUCK HINZUFÜGEN - Geben Sie SHA1 ein, um den Fingerabdruck des Zertifikats zu bestätigen
  5. Speichern
1
RonTLV