So fügen Sie SHA-1 zur Android-Anwendung hinzu

77

Ich versuche, einen dynamischen Link in Firebase zu erstellen. Wenn ich die Android-App auswähle, wird der Fehler "SHA-1 zu dieser Android-App hinzufügen" angezeigt. Ich habe bereits einen Berechtigungsnachweis hinzugefügt, bin es aber nicht sicher, wie genau ich "SHA-1 zur App hinzufügen"

Wie wird das gemacht?

John Sardinha
quelle
Überprüfen Sie dies , um den SHA-1-Schlüssel von Ihrem Android-Studio zu erhalten und ihn Ihrem Firebase-Projekt
hinzuzufügen
1
Ich habe den SHA-1-Schlüssel bereits erhalten, weiß aber nicht, wie ich ihn meinem Firebase-Projekt hinzufügen soll
John Sardinha,

Antworten:

152

SHA-1 Generation im Android Studio:

Ändern Sie die Firebase-Projekteinstellung

Klicken Sie auf die Schaltfläche Fingerabdruck hinzufügen


  1. Wählen Sie Gradle in Android Studio aus dem rechten Bereich

  2. Wählen Sie Ihre App

  3. In Aufgaben -> Android-> SigningReport

Doppelklicken Sie signingReport.

So erhalten Sie einen sha1-Fingerabdruck


Den SHA-1-Fingerabdruck finden Sie in der " Gradle Console "

Fügen Sie diesen SHA-1-Fingerabdruck in die Firebase-Konsole ein

SHA1-Fingerabdruck hinzufügen

Damini Mehra
quelle
2
Denken Sie daran, in der Ausgabe des Signaturberichts sowohl das Release als auch das Debug sha1 zu kopieren.
Humazed
Konnte SHA nicht bekommen.
CopsOnRoad
1
Nun, ich habe einige Zeit gebraucht, um den "Select Gradle" zu finden, da das Panel die richtige Größe hatte. :))))
dod_basim
1
Android Studio 3.3: Klicken Sie auf das Elefantensymbol im Gradle-Bedienfeld, wählen Sie das Projekt aus, geben Sie die Befehlszeile ein: "signingReport", klicken Sie auf OK
norbDEV
1
Für alle, die die Gradle-Option suchen, befindet sich die Schaltfläche "Gradle" vertikal geneigt auf der rechten Seite des Fensters.
Ajay Stefin
106

Wenn Sie Google Play App Signing verwenden , müssen Sie den SHA1 von Google Play verwenden, da Google Ihren Release-Signaturschlüssel durch den Schlüssel auf dem Google-Server ersetzt

Geben Sie hier die Bildbeschreibung ein

humazed
quelle
11
Dies muss viel höher sein. Ich habe total vermisst, dass mein Schlüssel nur zum Hochladen ist und Google ihn dann selbst zurückgibt. Ich
brauchte
2
Wirklich hilfreich! Die Google App Signing SHA1 muss zur Liste der SHA1 in Ihren Diensten hinzugefügt werden.
Lucy
4
Lebensretter! Dies sollte in der Dokumentation zum Google App Bundle hervorgehoben werden . Sie erwähnen es unter Tipps und Best Practices am Ende der Seite. Es ist jedoch unklar, was erforderlich ist und wie es umzusetzen ist.
Adam Hurwitz
Musste SHA-1 und SHA-256 des Upload-Schlüsselzertifikats verwenden. Danke übrigens.
mdhz
44

Alternativ können Sie die Befehlszeile verwenden, um Ihren SHA-1-Fingerabdruck abzurufen:

Für Ihr Debug-Zertifikat sollten Sie Folgendes verwenden:

keytool -list -v -keystore C:\Users\user\.android\debug.keystore -alias androiddebugkey -storepass android -keypass android

Sie sollten " c:\Users\user" mit dem Pfad zu Ihrem Windows-Benutzerverzeichnis ändern

Wenn Sie die Produktions-SHA-1 für Ihr eigenes Zertifikat erhalten möchten, ersetzen Sie " C:\Users\user\.android\debug.keystore" durch Ihren benutzerdefinierten KeyStore-Pfad und verwenden Sie Ihren KeystorePass und Keypass anstelle von Android / Android.

Dann deklarieren Sie die SHA-1Fingerabdrücke, die Sie auf Ihrer Firebase-Konsole erhalten, wie Damini sagte

gbaccetta
quelle
1
Sie müssen eine CD in den Java Bin-Ordner legen, damit Keytool funktioniert. Für mich war es, C:\Program Files\Android\jdk\microsoft_dist_openjdk_1.8.0.25\binobwohl Sie möglicherweise eine allgemeine Java-Edition direkt inC:\Program Files\Java\...
Todd
17

MacOS einfach in das Terminal einfügen:

keytool -list -v -alias androiddebugkey -keystore ~/.android/debug.keystore -storepass android -keypass android
norbDEV
quelle
6

Versuchen Sie, diesen Code in CMD einzufügen:

keytool -list -v -alias androiddebugkey -keystore  %USERPROFILE%\.android\debug.keystore
Seyyedd Masoud Nabavi
quelle
5

Nur für den Fall: Wenn Sie die Befehlszeile zum Generieren des SHA1-Fingerabdrucks verwenden, müssen Sie den Ordnerpfad angeben. Wenn Ihr Benutzername oder Android-Ordnerpfad ein Leerzeichen enthält, sollten Sie zwei doppelte Anführungszeichen wie folgt hinzufügen:

keytool -list -v -keystore "C:\Users\User Name\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
Gomez NL
quelle
5

Wenn Sie Google Play App Signing verwenden, müssen Sie Ihre SHA-1-Schlüssel nicht manuell hinzufügen. Melden Sie sich einfach bei Firebase an, gehen Sie zu "Projekteinstellungen" -> "Integration" und drücken Sie eine Taste, um Google Play mit Firebase, SHA, zu verknüpfen -1 wird automatisch hinzugefügt.

Torello
quelle
Da wir wissen, dass es völlig in Ordnung ist, Firebase und Google Play zu verknüpfen, ist dies eine super einfache Möglichkeit, die Schritte zur SHA-Generierung und -Integration loszuwerden. Innerhalb einer Minute konnte ich den Google-Anmeldefehler meiner Live-App beseitigen. Vielen Dank.
Mohit Kejriwal
4

Linux OS Terminal führen Sie diese aus:

  keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass androi
Udara Gunawardhana
quelle
3

Öffnen Sie unter Windows das Eingabeaufforderungsprogramm. Sie können dies tun, indem Sie zum Startmenü gehen

  keytool -exportcert -list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore

Öffnen Sie unter Mac / Linux das Terminal und fügen Sie es ein

   keytool -exportcert -list -v -alias androiddebugkey -keystore ~/.android/debug.keystore
Ganesh Chowdhary Sadanala
quelle
2

wenn ich sha1 key mit android studio generiere

Gradle -> Tasks -> android-> signingReportund doppelklicken

Dieser sha1-Schlüssel funktioniert im Debug- Modus, aber nicht, wenn ich versengte APK baue

Also habe ich sha 1 Schlüssel mit cmd generiert , es funktioniert

  • Wechseln Sie in den Ordner java \ jdk version \ bin

Beispiel

C:\>cd C:\Program Files\Java\jdk1.8.0_121\bin

und Typ

keytool -exportcert  -keystore {path of sign jks key } -list -v

Beispiel

keytool -exportcert  -keystore F:\testkey\damithk.jks -list -v
Damith Alahakoon
quelle
1

Für Linux Ubuntu Open Terminal und Write: -

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Predator_Shek
quelle
0

Öffnen Sie ein Terminal und führen Sie das mit Java bereitgestellte Dienstprogramm keytool aus, um den SHA-1-Fingerabdruck des Zertifikats abzurufen. Sie sollten sowohl die Fingerabdrücke des Release- als auch des Debug-Zertifikats erhalten.

So erhalten Sie den Fingerabdruck des Freigabezertifikats: keytool -exportcert -list -v \ -alias -keystore

CEO Otieno
quelle