Приложение не устанавливается при установке самоподписанного apk на SD-карту

* РЕДАКТИРОВАТЬ 1 * Конечно, сразу после публикации я попытался удалить приложение, а затем переустановить его из APK. Тогда это сработало. Может быть, плохо то, что я обычно устанавливаю его из Eclipse? Тестирование

/РЕДАКТИРОВАТЬ

Итак, у меня проблема, что мои прекрасные APK-файлы не устанавливаются на моем устройстве.

Я нашел другого, у кого была такая же проблема, и решил ее с помощью самоподписания: неподписанный APK может не устанавливать

Однако я всегда пробовал с подписанным APK. В Eclipse я выбираю «Экспорт», а затем мне нужно сначала выбрать и «войти» в свое хранилище ключей, затем выбрать ключ и снова указать свой пароль, а затем выбрать местоположение для файла и нажать «Готово».

Это последняя «страница» мастера:

введите здесь описание изображения

После того, как я скопировал этот APK-файл на свое устройство, а затем «запустил» его из проводника, экран установки показывает upp и выглядит нормально. Сначала я получаю экран «Заменить приложение» с вопросом, хочу ли я заменить существующую версию. Нажимаю "ОК". Затем он спрашивает меня, хочу ли я разрешить приложению ... yada yada. Нажимаю "Установить". После краткого сообщения «Установка» я получаю сообщение:

Приложение не установлено

с зеленой «галочкой» слева от нее.

Никаких других сообщений об ошибках.

Я поставил галочку "Неизвестные источники". Я мог бы добавить, что нет проблем, когда я запускаю то же приложение из Eclipse!

Любые советы и идеи будут оценены.


person Ted    schedule 21.10.2011    source источник


Ответы (6)


Если два .apk имеют разные подписи (Eclipse использует сертификат отладки), вы не сможете установить/обновить новый .apk без удаления предыдущего.

Дополнительную информацию об этом можно найти здесь.

person Che Jami    schedule 21.10.2011
comment
Несмотря на то, что я ответил на свой вопрос раньше вас, я дам вам ответ, поскольку он действительно правильный ;-) - person Ted; 22.10.2011

Проблема в том, что я сначала установил приложение через Eclipse (запуск/отладка из Eclipse).

Когда приложение было установлено таким образом, а затем я попытался переустановить его из APK, это не сработало.

Однако, если я сначала полностью удалил приложение, а затем переустановил из APK-файла, установка прошла успешно. Также после этого можно было переустановить (с обновленным APK)!

person Ted    schedule 21.10.2011
comment
Конечно, вы не можете установить APK, подписанный окончательным ключом (APK, созданный с помощью Export в Eclipse), поверх уже установленного APK с тем же именем, подписанным ключом отладки (когда вы запускаете проект из Eclipse). И наоборот. Клавиши просто другие, и Android жалуется на это. - person GrAnd; 21.10.2011
comment
На самом деле Android особо не жаловался. Пишет что не установлено и все. Не очень понятно... - person Ted; 22.10.2011

Я также столкнулся с этой проблемой. Пожалуйста, попробуйте это решение. Убедитесь, что имя пакета вашего проекта отличается от имени вашего предыдущего проекта, который уже был установлен на вашем мобильном телефоне. Я думаю, что они конфликтуют в своих именах. Это решило мою проблему.

person joepadz    schedule 01.06.2012

Старайтесь не устанавливать приложение через Eclipse. Если вы хотите избежать ситуации, когда после обновления у вас появляется сообщение «Приложение не установлено». Установить приложение. Устанавливайте только с использованием параметров экспорта в формате apk.

person Paweł    schedule 20.02.2013

создать файл хранилища ключей через командную строку

keytool -genkey -alias key_file_name.keystore -keyalg RSA -validity 1000000000000000 -keystore key_file_name.keystore

экспортируйте apk через Eclipse, щелкните правой кнопкой мыши проект Android Android Tools > Export Signed Application Package, затем укажите местоположение хранилища ключей и пароль.

это создаст подписанный apk, в то же время apk будет выровнен по zip. И устанавливаемый.

Если вы проходите через командную строку для всех, иногда вы можете столкнуться с ошибкой «Приложение не установлено». (Ошибка «Приложение не установлено» может возникать не только при использовании командной строки. Это могут быть и другие причины)

person Chinthaka Senanayaka    schedule 05.05.2013

Вы можете столкнуться с этой проблемой, если подпишете свой APK на машине с JDK 7. Переход на JDK 6 устраняет проблему.

person Zenadix    schedule 21.11.2014