Вопрос

Если у меня есть JAR (Android APK), и я подписал его следующим образом:

jarsigner -keystore my.keystore someApk.apk myAlias

Как мне отменить его подписку?Потому что, если я открою его как zip-файл и попытаюсь извлечь AndroidManifest.xml, все они будут перепутаны.

Это было полезно?

Решение 2

Оказывается, проблема вообще не связана с подписанием - это потому, что XML-файл скомпилирован.Чтобы просмотреть содержимое этого файла, вы должны использовать aapt инструмент.

Другие советы

Если вас не волнует манифест и другая метаинформация (чего вы, вероятно, не делаете, поскольку просто хотите извлечь ресурсы), вы можете просто извлечь файлы с помощью jar -xvf myjar.jar, удалите каталог META-INF и создайте новый (unsigned jar).

Если вы делай заботясь о метаинформации, взгляните на Понимание Подписания и верификации для описания того, что делает подписание.Вы должны иметь возможность отменить подпись jar, отредактировав манифест и удалив файл подписи в каталоге META-INF jar.

Приведенное выше может ответить на ваш вопрос, но они могут не решить вашу проблему, потому что я не уверен, как наличие подписанного jar приведет к "испорченности" ресурсов.Процесс подписания не влияет на сами ресурсы.Если вы просто извлекаете ресурсы с помощью самой команды jar (как во втором абзаце выше), у вас все еще есть проблемы?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top