Android-Entwicklung: Keytool erstellen Sie eine keystore?
Ich versuche, mich vorzubereiten, meine app für die google-Markt, aber es erweist sich als viel schwieriger als erwartet. Ich kann nicht scheinen zu begreifen das ganze Konzept des signierens der app, aber um genauer zu sein mein problem ist, dass habe ich installiert das Dienstprogramm keytool-plugin für eclipse, aber wenn ich will, um ein Zertifikat zu erstellen, es fordert mich auf, einen keystore (Geben Sie den Dateinamen und das keystore-Kennwort), ich verstehe nicht, was soll ich eingeben als Datei, weil es ja eigentlich will, dass ich wählen Sie die Datei über durchsuchen und wie verfahre ich mit der Export-Datei, Google hat leider nicht mit sehr gut oder klare Antworten
InformationsquelleAutor Oliver | 2013-11-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie noch Speicherort und Dateinamen für Ihre neue keystore-Datei in Fall, dass Sie eine neue erstellen. Alternativ könnten Sie wählen Sie "verwenden Sie vorhandene keystore", und navigieren Sie zum vorhandenen keystore-Datei an.
Bearbeiten: ich dachte, ich würde aufwändige Antwort. Hoffe, diese info wäre nützlich.
, Was Signatur ist und warum es nötig ist.
Die apk-Signatur-Mechanismus von android ist ein Beispiel die Nutzung der digitalen Signatur angewendet bytecode und Ressourcen der Anwendung zu gewährleisten :
Besser zu verstehen digitale Signatur ich schlage vor, Sie auch durch überfliegen public-key-Kryptographie.
Wie funktioniert das.
Android verwendet die gleichen standard-JDK-Werkzeuge für Signatur/Verifikation der standard-java-apps:
private key
, und prüft die Daten mit Zertifikat (d.h. den öffentlichen Schlüssel gebunden an Ihre Identität)keystore
. Diese Tasten werden benötigt fürjarsigner
.Nach dem signieren Sie Ihre Anwendung manuell mit
jarsigner
oder exportieren Sie den unterzeichneten Antrag mit Hilfe Ihrer IDE (verwendetkeytool
undjarsigner
unter der Haube sowieso), können Sie dann suchen Sie Signatur-bezogenen Dateien imMETA-INF
- Verzeichnis Ihres unterzeichnet .apk-Archiv :SHA
hashes Ihrer app-Komponenten undLesen Sie mehr details darüber, wie Gesang funktioniert hier.
, Wie man richtig Zeichen-Anwendung für das release.
Dieser Artikel sehr gut beschreibt Schritte, die Sie Folgen müssen.
Hinweis: Bitte beachten-wichtige pre-release-Schritte, bevor Sie fortfahren mit der Unterzeichnung : logs/kritische string-Literale Entfernung, Verbergung mit proguard, etc.
Unten werde ich einige wichtige Punkte für den Prozess :
Erzeugen Ihre privaten Schlüssel und steckte es in java
keystore
.Diese erfordern die Schaffung
keystore
zuerst, wenn Sie keine haben. Beim erstellenkeystore
Sie brauchen, um zu erstellenKeystore password
zu lassen, die zur Gewährleistung der Integrität vonkeystore
Daten (D. H. Sie werden gewarnt, dass Ihre keystore-manipuliert wird, nachdem jemand - nicht du -hat neue Zertifikat). Praktisch, dieses Passwort ist nicht super wichtig, wenn Sie halten Sie Ihrekeystore
Datei sicher. Sie können sich, wenn Sie es vergessen, irgendwann.Beim generieren
private key
Sie werden auch gefragt, zu erstellenPrivateKey password
verwendet wird zur Verschlüsselung der privaten Schlüssel in die keystore. Dies ist sehr wichtig, Passwort, die Sie benötigen, um zu halten, denn Sie sorgt dafürBeim erzeugen Ihres neuen privaten Schlüssel in Eclipse, werden Sie auch gebeten werden, die Identität Informationen, die verwendet wird, zu erstellen Sie Ihre selbst-signiertes Zertifikat.
Als nächsten Schritt Ihre
private key
aus den angegebenenkeystore
- Datei wird verwendet, um die Anwendung zu signieren und Ihre.apk
wird aktualisiert, mit Signatur-Dateien im Zusammenhang mit oben erklärt.Einige wichtige Terminologie :
Keystore ist einfach eine binary-Datei, halten Sie die Liste Ihrer privaten Schlüssel /Zertifikate in einem bestimmten format. Es wird programmseitig zugänglich über API KeyStore.java. Ihrem keystore enthalten können mehrere private-key-Einträge, die jeweils identifiziert durch seine
alias
.In der Mehrheit der Fälle Ihre
keystore
haben einzelne private Schlüssel einzelnes selbstsigniertes Zertifikat passenden privaten Schlüssel.Keystore-Kennwort wird verwendet für die überprüfung der Integrität der keystore-Inhalt.
Wenn Sie verlieren Sie dieses Passwort, aber Sie haben noch Passwort für den privaten Schlüssel gespeichert innen, können Sie die "clone" den keystore und geben Sie neuen keystore-Kennwort durch ausführen der folgenden cmd ein:
neue Kennwort ein, und lassen alten keystore-Passwort leer - Sie wird nur eine Warnung erhalten. Sie können dann mit dem neuen keystore und bekommen von alten loswerden.
Es gibt andere Möglichkeiten, die Sie abrufen können, Ihren privaten Schlüssel ohne mit keystore-Kennwort einzugeben.
Private key-Passwort - schützt(durch die Verschlüsselung)
private key
innenkeystore
. Es ist extrem wichtig, da es ermöglicht Ihnen den Zugriff auf Ihren privaten Schlüssel an, unter anderem Zeichen-updates für Ihre Anwendung. Es ist generell sehr schwer sich zu erholen.Self-signed ceritificate - sehr einfache Zertifikat-Bindung Ihre Identität(name/Organisation/E-Mail) Ihren öffentlichen Schlüssel. Dieses Zertifikat wird Hinzugefügt
.apk
- Datei während der Unterzeichnung Betrieb und die verwendet werden auf dem Gerät des Benutzers zu überprüfen.apk
vor der installation.Können Sie nach details bei der Fehlermeldung bitte ?
umm error-log ist sehr lang,, welche Teile benötigen Sie?
der Fehler keinen Sinn machen, es sagt: "Ein expcetion aufgetreten, während die Benachrichtigung der Teil-Hörer" und "Probleme aufgetreten beim aufrufen von code aus dem plug-in org.eclipse.e4.ui.Werkbank" , aber meine Anwendung läuft gut und hat 0 Fehler
hm. Haben Sie versucht, signieren der app mit standard-eclipse-workflow : developer.android.com/tools/publishing/... ? Normalerweise sollte es sehr einfach sein und für Sie zu arbeiten, da Sie kompilieren von source-code selbst
InformationsquelleAutor kiruwka