Ich versuche, meine Android-App gemäß den Schritten in https://developers.google.com/console/help/#installed_applications zu registrieren. Dies führt mich dazu, http://developer.android.com/tools/publishing/app- zu folgen. signieren.html .
Ich bin mir jedoch nicht sicher, wie ich den Fingerabdruck des Signaturzertifikats (SHA1) erhalten soll.
Ich habe zuerst das Eclipse ADT-Plugin verwendet, um den Schlüsselspeicher / Schlüssel zu exportieren und zu erstellen. Dann habe ich es versucht keytool -list keystore mykeystore.keystore
und es gibt mir einen MD5-Zertifikat-Fingerabdruck. Muss ich die Signatur wiederholen (dh ich kann den Eclipse-Exportassistenten nicht verwenden)?
Kann ich zuerst ein Debug-Zertifikat verwenden?
Antworten:
Starten Sie einen Exportprozess, um eine Apk für Ihre App zu erstellen und Ihren Produktionsschlüssel zu verwenden. Auf der letzten Seite werden sowohl die Fingerabdrücke Ihres SHA1- als auch Ihres MD5-Zertifikats angezeigt
quelle
Ich weiß, dass diese Frage beantwortet wurde, aber so habe ich meine Signatur für den Standard-Keystore gefunden. Gehen Sie in Eclipse zu Windows -> Einstellungen -> Android -> Erstellen
quelle
Ich denke das wird perfekt funktionieren. Ich habe das gleiche benutzt:
Für Android Studio:
quelle
Wenn Sie einen Mac oder sogar Linux verwenden, kopieren Sie diese einfach und fügen Sie sie in die Terminal- Anwendung ein. Sie erhalten sofort den SHA1-Schlüssel. Sie müssen nichts ändern.
Beispielausgabe:
quelle
Verwenden Sie dies in der Befehlszeile
quelle
Öffnen Sie das Terminal (unter Unix , unter MAC ), (
cmd
unter Windows ) undcd
zu diesem Pfad (Ihrem Java):Führen Sie diesen Befehl aus:
Ändern
debug.keystore
Sie einfach den Pfad zu und Sie erhalten sowohl MD5- als auch SHA-1-Fingerabdrücke.quelle
Führen Sie diesen Befehl in dem Verzeichnis aus, in dem sich der Schlüsselspeicher Ihrer App befindet.
quelle
Führen Sie in Android Studio die folgenden Schritte aus:
quelle
Sehen Sie, ob Sie zu
Google Map
diesem Zeitpunkt einenMD5
Fingerabdruck zum Generieren benötigenapi kay
um Google Map in Ihrer Android-Anwendung verwenden zu können.Der Befehl Keytool generiert
MD5
bei VerwendungJDK 1.6
einenSHA1
Fingerabdruck und bei Verwendung einen FingerabdruckJDK 1.7
.Wenn Sie also Ihre Bewerbung für die Veröffentlichung signieren möchten, lesen Sie diese .
Und wenn Sie verwenden möchten,
google-map
lesen Sie dies .quelle
keytool -list -v etc
Befehl macheWenn Sie IntelliJ (12+?) Verwenden, gehen Sie zum Menü Signierte API erstellen / generieren
Rufen Sie nach dem Ausfüllen eines Popups die Daten im Feld "Schlüsselspeicherpfad" ab (z. B. C: \ Benutzer \ Benutzer \ Dokumente \ Speicher \ Speicher).
Und führen Sie eine Befehlszeile aus:
Viel Glück
quelle
Wenn jemand das Android Studio benutzt ...
Klicken Sie auf: Erstellen> In APK signiert generieren. Erstellen Sie einen neuen Schlüssel. Dadurch werden ".jks" -Dateien generiert
Verwenden Sie den folgenden Befehl, um die Daten zu lesen (SHA1 und andere Informationen):
$ keytool -list -v -keystore filename.jks
quelle
$keytool -keystore filename.jks | openssl sha1 -binary | openssl base64
Für Benutzer von OpenSSL können Sie den SHA1-Fingerabdruck folgendermaßen abrufen:
Was zu folgender Ausgabe führen würde:
quelle
Wenn Sie Android Studio verwenden. Sie müssen keinen SHA1-Fingerabdruck mithilfe der Eingabeaufforderung cmd generieren. Sie müssen nur ein Projekt mit der Standard-Kartenaktivität von Android Studio erstellen. Im Projekt können Sie den Fingerabdruck in google_maps_api.xml im Ordner Werte abrufen. Hoffe das wird dir helfen. :) :)
quelle
Hier ist meine einfache Lösung dafür:
Klicke auf
Gradle
Schaltfläche, die Sie oben rechts finden. Sie sehen alle Gradle-Dateien. Gehen Sie jetzt zu Android und doppelklicken Sie auf signingReport. Sobald der Gradle-Build abgeschlossen ist, sehen Sie den SHA-Schlüssel. In den folgenden Bildern finden Sie eine schrittweise Anleitung.Sobald Sie auf Gradle klicken, überprüfen Sie die folgenden Bilder. Hoffe das hilft jemandem.
SCHRITT 1:
SCHRITT 2:
quelle
Wenn Sie Android Studio verwenden. Sie können den SHA1-Zertifikat- Fingerabdruck (Debuggen, Freigeben ... aller Build-Typen !!) schnell über Gradle-Aufgaben abrufen :
SHA1 wird in Nachrichtenprotokollen angezeigt
Das Android-Plugin (in der Gradle-App konfiguriert) erstellt standardmäßig einen Debug-Modus.
Dateiroute zum Keystore:
HOME / .android / debug.keystore
Ich empfehle befestigen debug.keystore zu build.gradle. Legen Sie dazu eine Datei debug.keystore in einen App-Ordner und fügen Sie dann SigningConfigs in der Gradle-App hinzu:
Extra: Wenn Sie für die Veröffentlichung erstellen möchten, legen Sie eine Datei release.keystore in einem App-Ordner ab. (In diesem Beispiel wird derselbe debug.keystore verwendet.)
quelle
Versuchen Sie dies: Windows ---- Einstellungen ---- Android - Build --- sh1 Code Kopie von hier
quelle
Ich war beim ersten Mal so verwirrend, aber ich schlage Ihnen die endgültige Arbeitslösung für Windows vor:
1) Öffnen Sie cmd und wechseln Sie in Ihr Java / jdk / bin-Verzeichnis (drücken Sie einfach
cd ..
, um einen Ordner zurück undcd NAME_FOLDER
einen Ordner vorwärts zu verschieben), in meinem Fall den letzten Ordner:C:\Program Files\Java\jdk1.8.0_73\bin>
2) Geben Sie nun diesen Befehl ein
keytool -list -v -keystore C:\Users\YOUR_WINDOWS_USER\.android\debug.keystore -alias androiddebugkey -storepass android -keypass android
Als Ergebnis müssen Sie so etwas bekommen:
quelle
Ich denke das wird perfekt funktionieren. Ich habe das gleiche benutzt:
Für Android Studio:
Klicken Sie auf Erstellen> Signierte APK generieren. Sie erhalten ein Meldungsfeld. Klicken Sie einfach auf OK.
Jetzt wird es ein weiteres Fenster geben, kopieren Sie einfach den Schlüsselspeicherpfad.
Öffnen Sie nun eine Eingabeaufforderung und gehen Sie zu C: \ Programme \ Java \ jdk1.6.0_39 \ bin> (oder einer beliebigen installierten JDK-Version).
Geben Sie keytool -list -v -keystore ein und fügen Sie dann Ihren Schlüsselspeicherpfad ein (z. B. C: \ Programme \ Java \ jdk1.6.0_39 \ bin> keytool -list -v -keystore "E: \ Meine Projekte \ Android \ android studio \ signierte apks \ Hello World \ HelloWorld.jks ").
Jetzt wird das Key Store-Passwort abgefragt, Ihr Passwort angegeben und die Eingabetaste gedrückt, um Ihre SHA1- und MD5-Zertifikatschlüssel zu erhalten.
Fügen Sie nun diesen SHA1-Schlüssel zur Google-Entwicklerkonsole auf der Registerkarte "Anmeldeinformationen" hinzu und ändern Sie die Build-Varianten in Android Studio in den Release-Modus.
quelle
Für diejenigen auf dem Mac, die nach Keytool suchen. folge diesen Schritten:
Stellen Sie zunächst sicher, dass Sie Java JDK http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jdk.html installieren
Geben Sie dies dann in die Eingabeaufforderung ein:
/usr/libexec/java_home -v 1.7
es wird so etwas ausspucken wie:
Das Keytool befindet sich im selben Verzeichnis wie
javac
. dh:Aus dem bin-Verzeichnis können Sie das Keytool verwenden.
quelle
Wenn Sie unter Mac / Linux arbeiten, können Sie den SHA1-Fingerabdruck erhalten, indem Sie die folgende Zeile in das Terminal schreiben:
Danach sind zwei Dinge möglich
Sie werden nach dem Passwort gefragt
Schreib einfach
und drücken Sie die Eingabetaste. Sie finden die SHA1-Taste in der unten gezeigten Ausgabe.
Sie werden aufgefordert, ein geeignetes Programm herunterzuladen (und eine Liste wird angegeben).
Geben Sie einfach im Terminal Folgendes ein
und führen Sie dann im Terminal erneut Folgendes aus:
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Dieses Mal werden Sie zu Schritt 1 geführt, in dem Sie nur das Passwort als eingeben müssen
und Sie erhalten Ihren SHA1-Fingerabdruck unten in der Ausgabe.
quelle
Mit Portecle :
quelle
Der einfachste Weg, um SHA-1 für den Release- und Debug-Modus zu erhalten. Überprüfen Sie dies
quelle
Ich wollte eine Benachrichtigung an diejenigen senden, die das gleiche Problem wie ich haben. Ich habe die Schritte durchlaufen, um mein Debug-SHA-1 und mein Release-SHA-1 zu generieren. Ich habe versucht, die Google-Anmelde-API mit meiner App zu verbinden.
Ich bin auf das Problem gestoßen, dass das Debug .apk einwandfrei funktionieren würde, eine Verbindung herstellen und sich mit Google Sign-In authentifizieren würde. Meine Version .apk würde auch funktionieren, wenn sie manuell auf dem Telefon installiert wird. Wenn ich meine .apk-Version im Google Play Store veröffentlichte, wurde meine Google-Anmeldung nicht authentifiziert und ich bekam ein Problem!
Die längste Zeit konnte ich es nicht herausfinden, aber ich stellte fest, dass meine App von Google signiert wurde, dh die Meldung oben auf der Entwicklerkonsole zeigte Folgendes: Google Play App Signing ist für diese App aktiviert.
Ich ging zu meiner Registerkarte "Release Management", scrollte nach unten zu "App Signing" und fand dort den SHA-1. Nachdem ich dies meinem Code und der "Firebase-Konsole" hinzugefügt hatte, die ich als Backend für die Google-Anmeldung verwendete, schien alles zu funktionieren. Es sieht so aus, als würde mein Release-Keystore durch das von Google signierte Zertifikat ersetzt. Ich bin mir nicht sicher, ob dies der Fall war, aber es hat mein Problem behoben und es meiner Google Play Store-Release-Apk ermöglicht, sich korrekt mit dem Google-Zeichen zu authentifizieren im!
quelle
Schritt-für-Schritt Lösung:
Wechseln Sie in das Verzeichnis des Speicherorts der Keytool-Datei. Wechseln Sie das Verzeichnis mit dem Befehl
cd <directory path>
. (Hinweis: Wenn ein Verzeichnisname Leerzeichen enthält, fügen Sie \zwischen den beiden Wörtern ein. Beispielcd /Applications/Android\ Studio.app//Contents/jre/jdk/Contents/Home/bin/
)Um den Speicherort Ihres Keytools zu finden, gehen Sie zu Android Studio. Öffnen Sie Ihr Projekt. Und geh zu
Datei> Projektstruktur> SDK-Speicherort..und JDK-Speicherort suchen.
Führen Sie das Keytool mit dem folgenden Befehl aus:
keytool -list -v –keystore <your jks file path>
(Hinweis: Wenn ein Verzeichnisname Leerzeichen enthält, fügen Sie zwischen den beiden Wörtern \ hinzu. Beispielkeytool -list -v -keystore /Users/username/Desktop/tasmiah\ mobile/v3/jordanos.jks
)Die Eingabeaufforderung fordert Sie auf, das Passwort einzugeben. Geben Sie also Ihr Passwort ein. Dann erhalten Sie das Ergebnis
quelle
Hier ist ein Tool für faule Programmierer:
1 Abhängigkeit hinzufügen:
2 Fügen Sie irgendwo in Ihrer Aktivität / Anwendung die folgenden Zeilen hinzu:
3 Öffnen Sie logcat und fangen Sie die Nachricht ab.
4 Gewinn!
quelle
keytool -list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore
quelle
Wenn Sie den Fingerabdruck-sha1-Schlüssel vom Signieren der Datei keystore.jks erhalten möchten, führen Sie den folgenden Befehl vom Terminal aus:
Beispiel
quelle
Bitte klicken Sie auf Gradle auf der rechten Seite des Menüs. Klicken Sie dann auf: App. Klicken Sie dann auf Android-Ordner. Dann ist dort der Name der SigningReport-Datei vorhanden. Doppelklicken Sie darauf. Es wird ausgeführt und in einer Weile wird Ihnen der SHA-1-Code angezeigt. Kopieren Sie einfach den Code. Und fügen Sie es dort ein, wo Sie es brauchen
quelle