Android: Nach dem Erstellen von Plattform-Quelle, wie willkürliche APK mit Plattform-Schlüssel zu unterzeichnen?
Als ein experiment, ich möchte die Plattform nutzen Schlüssel von meiner custom built Android-Plattform anmelden eine beliebige APK, gebaut ist, dass Sie über das NDK. Was ist zu tun?
InformationsquelleAutor der Frage zer0stimulus | 2010-11-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie Ihren Plattform-Schlüssel/Zertifikat-paar (.pk8 + x509.pem). Die finden Sie unter build/target/product/security in der pulbic sdk.
Können Sie die SignApk.jar von der Befehlszeile aus
Oder, um die Automatisierung zu vereinfachen, können Sie den Schlüssel importieren/cert-pair-Mädchen in Ihre java-keystore-Datei, mit der keytool-importkeypairund verwenden Sie ein makefile oder ant eclipse für die Unterzeichnung.
InformationsquelleAutor der Antwort aprock
Den signapk.jar (alle Kleinbuchstaben) genannten Datei in aprock' Antwort finden Sie unter
prebuilts/sdk/tools/lib/signapk.jar
(oderout/host/linux-x86/framework/signapk.jar
).Im folgenden werde ich beschreiben, wie die Verwaltung der keystore verwendet, die von Eclipse und
ant release
.Den folgenden Befehl nimmt die key-Datei Plattform.pk8 und X509-Zertifikat Plattform.x509.pem - und gibt den entschlüsselten Schlüssel material in tmp.p12. Der name platformkey wird verwendet, um
Eclipse und
ant debug
Verwendung der Schlüsselspeicher auf ~/.android/debug.keystoredie gesperrt mit dem Kennwortandroid
. (Sie können auch angeben, einen anderen keystore-Datei, wenn Sie wollen, z.B.~/.android/mykeys.keystore
.) Der nächste Befehl speichert die Schlüssel-material aus tmp.p12 in den keystore (ohne ein Passwort für den Schlüssel, wenn Sie wollen, Bearbeiten-srcstorepass ''
unten):In diesem Punkt können Sie löschen Sie die tmp.p12 - Datei, da es nicht mehr benötigt wird.
Um zu prüfen, was in Ihrem keystore können Sie die nächsten
keytool
Befehl (die Ausgabe gezeigt, auf der Linie, danach):Wenn Sie nicht mehr benötigen, dem Schlüssel, es kann entfernt werden mit:
In Ihrem
local.properties
- Datei setzen (wenn du weglassen, diekey.*.password
- Optionen, müssen Sie jedes mal eingeben, die Sie signieren der APK):Nun kann man
ant release
zu unterzeichnen, APK, die über die Plattform Schlüssel, den Sie gespeichert in einem keystore.InformationsquelleAutor der Antwort Lekensteyn