2015-02-25 4 views
0

Недавно я скопировал и вложил старый проект приложения для Android в Eclipse. После этого я внес некоторые изменения в проект, включая refactor> rename the project, как имя проекта, так и имя пакета. Кажется, все хорошо, когда вы запускаете этот модифицированный дублированный проект в эмуляторе без проблем.APK не устанавливается на устройство

Но когда я попытался запустить его на своем устройстве (из Eclipse), он не работает, так как на устройстве установлен оригинальный старый проект приложения Android.

Не удалось выполнить повторную установку Eclipse из-за различных подписей приложений. Вы должны выполнить полную деинсталляцию приложения. ПРЕДУПРЕЖДЕНИЕ. Это приведет к удалению данных приложения! Вы хотите удалить?

Я этого не сделал.

Но я экспортировал unsigned apk дублированного модифицированного проекта и попытался установить его на устройство, и он снова не работает. Я удаляю старое приложение и пытаюсь переустановить дублированный модифицированный проект, и он снова не работает.

Я не уверен, почему имя проекта и имена пакетов отличаются от оригинала. Кроме того, я замечаю, что дублированный модифицированный проект составляет почти 40 Мб по сравнению с оригиналом только 8 МБ. Если его копия оригинала (плюс некоторые незначительные изменения, которые действительно уменьшаются на самом деле), как она стала такой большой? Я проверил это в папках дублированного модифицированного проекта, я увидел, что в его папке dexlibs есть оригинальный APK исходного проекта (с именем исходного проекта и именем пакета). Я провел некоторое исследование в Интернете, и они говорят, чтобы игнорировать его.

В APK дублированного модифицированного проекта, безусловно, это меньше, чем исходная версия APK. Но почему он не устанавливается и при установке он все еще использует имя имени исходного пакета проектов вместо нового дублированного измененного имени?

Пожалуйста, помогите.

+1

возможно дубликат [Android App не установить. Существующий пакет с тем же именем с конфликтующей сигнатурой уже установлен] (http://stackoverflow.com/questions/19959890/android-app-not-install-an-existing-package-by-the-same-name- с-конфликтом) – 323go

+1

Вы обновили имя пакета в манифесте? –

+0

Спасибо. Вы точно сформулировали проблему. Я изменил пакет манифеста на новое имя пакета и протестировал его с помощью устройства через eclipse, и он работает. Не могу поверить, что я пропустил это (я изменил все имена пакетов в манифесте в тегах , но забыл о главном.) Большое спасибо.Сохранял меня от большой царапины головы. Если вы укажете свой ответ в качестве ответа, я сделаю это ответом. – user3492802

ответ

0

Похоже, вы пытаетесь установить дублирующее приложение с другой подписью на том же устройстве. Вам нужно либо сделать приложение «другим», то есть изменить имя пакета (в Eclipse, в Android Tools/Rename Application Package); или вам нужно найти тот же ключ, который вы использовали раньше, чтобы подписать приложение - это вполне может быть отладочным ключом, и, скорее всего, он истек.

Если вы измените имя пакета, новая версия приложения не будет иметь доступа к данным из старой версии приложения. Если вы найдете старый ключ, и он истек, вы можете уговорить Android принять его, установив дату на ПК и устройство обратно.

1

Необходимо удалить приложение с устройства и выполнить его снова.

0

Все, что вам нужно будет выполнить следующие команды в командной оболочке убедитесь ADB путь установлен в вашей системе PATH

adb uninstall your_package_name 
adb install path_to_apk 
Смежные вопросы