Android: ошибка разбора при разборе манифеста. Прекращаем установку - PullRequest
4 голосов
/ 04 февраля 2012

Я знаю, что этот вопрос здесь задавали до смерти, но я не могу найти решение во всех предложенных ответах, и это сводит меня с ума.

У меня есть приложение, которое я настроил дляскачать обновления с моего собственного сервера.Это обновление отлично работает на некоторых типах телефонов, но не работает на других (а именно на Droid Incredible 2).

Ошибка, которая появляется при попытке установить обновление на НЕКОТОРЫХ телефонах:

«Ошибка синтаксического анализа: при синтаксическом анализе пакета.»

LogCat показывает:

INFO/ActivityManager(1482): Starting activity: Intent { act=android.intent.action.VIEW dat=file:///mnt/sdcard/download/application.apk typ=application/vnd.android.package-archive cmp=com.android.packageinstaller/.PackageInstallerActivity } from pid 4620
WARN/PackageParser(2528): Skipping dir: /mnt/sdcard/download/application.apk
WARN/PackageInstaller(2528): Parse error when parsing manifest. Discontinuing installation
  1. Я подписываю и экспортирую это приложение с действительнымключ, используя инструмент Eclipse, с MinSDK версии 3.
  2. Я удостоверяюсь, что код версии в загруженном приложении выше, чем у существующего приложения.
  3. Я проверяю, чтобы имя файла .apk было одинаковым в обоих приложениях.

Что еще я мог делать неправильно?

edit: я загрузилэто приложение для Android Market ... когда я пытаюсь установить на проблемные телефоны, я получаю предупреждение "Файл пакета был подписан неправильно".На других телефонах скачивается и устанавливается просто отлично.

Ответы [ 2 ]

3 голосов
/ 11 февраля 2012

Проблема была в том, что я обновлял приложение, которое изначально было установлено через adb, а не через маркет.

2 голосов
/ 22 февраля 2012

Если вы пытаетесь скачать apk, а не устанавливать его программно, будьте осторожны, используя AsynTask или правильно выполняйте многопоточность.Раньше я сталкивался с той же ошибкой, потому что действие использовалось, чтобы получить неполный apk для его установки.

Я использую AsynTask сейчас.doInBackground (выполняет загрузку), onPostExecute (добавляет ожидающее намерение и вызывает startActivity, чтобы открыть экран установки).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...