Как правильно подписывать приложения в CyanogenMod?
Я скомпилировал CyanogenMod 7 из исходного кода, затем попытался установить ADWLauncher на свое устройство:
$ adb install -r ./out/target/product/crespo/system/app/ADWLauncher.apk
4147 KB/s (1060312 bytes in 0.249s)
pkg: /data/local/tmp/ADWLauncher.apk
Failure [INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES]
Ответ на соответствующий вопрос говорит, что это означает, что пакет не был подписан должным образом. Но когда я пытаюсь подписать его - не получается, потому что пакет уже подписан. Как я могу подписать это правильно?
Есть линия
LOCAL_CERTIFICATE := shared
в Android.mk. Как я могу переопределить его своим собственным сертификатом?
1 ответ
Это может быть связано с тем, что вы пытаетесь установить версию приложения поверх другой версии с другой подписью. Попробуйте сначала полностью удалить уже установленный apk, либо через пользовательский интерфейс Android, либо через adb:
adb uninstall org.adw.launcher
Затем попробуйте установить свежий снова. Та же самая ошибка может произойти, даже если вы создали обе версии сами, например, сначала установили версию, подписанную ключом выпуска, а затем снова установили то же приложение с помощью ключей тестирования / отладки.