В чем разница между подписантом Jar и подписантом Apk?

Поскольку ApkSigner доступен в версии 24.0.3 и выше инструментов сборки Android SDK. У меня вопрос, в чем разница между ApkSigner и JarSigner? Зачем нам нужен ApkSigner?

Могу ли я подписать Apk в командной строке для обоих подписантов?


person Krunal Kapadiya    schedule 24.05.2017    source источник


Ответы (1)


jarsigner предназначен для подписи файлов JAR и ничего не знает об APK и Android, тогда как apksigner предназначен для подписи файлов APK и знает, какие требования Android предъявляет к подписям APK. Например, jarsigner не создает подписи APK Signature Scheme v2, введенные в Android Nougat, в отличие от apksigner. Другим примером является то, что jarsigner не знает, что APK, которые должны работать на уровне API 17 или ниже, не должны использовать дайджесты SHA-256 в своих подписях, тогда как apksigner знает об этом.

Если вы хотите подписать APK с помощью одного из этих инструментов, используйте apksigner.

РЕДАКТИРОВАТЬ: Вот официальная документация о подписании из командной строки: https://developer.android.com/studio/publish/app-signing.html#signing-manually

person Alex Klyubin    schedule 24.05.2017
comment
@KrunalKapadiya Да. apksigner sign --ks mykeystorefile --ks-key-alias myaliasname myapkfile.apk - person Yousha Aleayoub; 06.01.2019