Dies ist die 1 Liner / 1 Step- Version der obigen Antwort von @ Joerg:
zip -d foo.apk META-INF/\*
Dabei wird die integrierte Funktion "Aus vorhandenem Archiv löschen" des zipBefehls verwendet. Wenn Sie diesen Befehl ausführen, sollten Sie Folgendes sehen:
deleting: META-INF/MANIFEST.MF
deleting: META-INF/CERT.SF
deleting: META-INF/CERT.RSA
... als Ausgabe. Diese Dateien sind die vorhandene Signatur. Wenn Sie sie entfernen, können Sie sie erneut unterschreiben.
Ich möchte auch wiederholen, dass Sie sicher sein sollten, die Argumente -sigalg SHA1withRSAund -digestalg SHA1an jarsignerzu übergeben, um dieses Problem zu vermeiden: https://code.google.com/p/android/issues/detail?id=19567