Как правильно подписывать приложения в 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

Затем попробуйте установить свежий снова. Та же самая ошибка может произойти, даже если вы создали обе версии сами, например, сначала установили версию, подписанную ключом выпуска, а затем снова установили то же приложение с помощью ключей тестирования / отладки.

Другие вопросы по тегам