Come posso verificare che un apk Android sia firmato con una versione e non con debug cert?
source thatfile
. I commenti nello script spiegano come eseguirlo.
Come posso verificare che un apk Android sia firmato con una versione e non con debug cert?
source thatfile
. I commenti nello script spiegano come eseguirlo.
Risposte:
Utilizzare questo comando, (vai a java <jdk <percorso bin nel prompt cmd)
$ jarsigner -verify -verbose -certs my_application.apk
Se vedi "CN = Debug Android", significa che .apk è stato firmato con la chiave di debug generata da Android SDK (significa che non è firmato), altrimenti troverai qualcosa per CN. Per maggiori dettagli, consultare: http://developer.android.com/guide/publishing/app-signing.html
this means the .apk was signed with the debug key generated by the Android SDK (means it is unsigned)
- questo non significa che non sia firmato. Significa quello che hai appena scritto: è firmato con la chiave di debug.
jarsigner -verify -verbose -certs myapp.apk | grep CN= | less
non dovremmo vedere "CN = Android Debug".
Usa il comando console:
apksigner verify --print-certs application-development-release.apk
Puoi trovare apksigner in ../sdk/build-tools/24.0.3/apksigner.bat. Solo per strumenti di build v. 24.0.3 e versioni successive.
Leggi anche documenti di Google: https://developer.android.com/studio/command-line/apksigner.html
apksigner
in `% LOCALAPPDATA% \ Android \ sdk \ build-tools \ 25.0.3` (e tutte le altre versioni degli strumenti di build che avevo installato)
apksigner
manca nella versione 26.0.0
di build-tools. È monitorato in issuetracker.google.com/issues/62696222 e dovrebbe essere corretto nella prossima versione. La soluzione alternativa fino ad allora è di utilizzare apksigner
da 25.0.3
.
apksigner
è incluso nella versione26.0.1
./apksigner verify --print-certs -v ~/Downloads/MyAppHere.apk
Utilizzare questo comando: (Jarsigner si trova nella cartella bin Java goto java-> jdk-> percorso bin nel prompt cmd)
$ jarsigner -verify my_signed.apk
Se .apk è firmato correttamente, Jarsigner stampa "jar verificato"
Il più semplice di tutti:
keytool -list -printcert -jarfile file.apk
Questo utilizza l'app keytool Java integrata e non richiede estrazione o installazione di strumenti di build.
keytool -printcert -file ANDROID_.RSA or keytool -list -printcert -jarfile app.apk
per ottenere l'hash md5keytool -list -v -keystore clave-release.jks