Ошибка при запуске zipalign

Я получил эту ошибку при попытке экспортировать подписанный apk в Eclipse

Ошибка при запуске zipalign: Невозможно открыть  как zip-архив

Я запустил Help- > Check for Updates, чтобы убедиться, что установлено последнее обновление, и инструменты SDK также обновлены.

Ответ 1

Я получал такое же сообщение об ошибке. Поднял меня с ума, пока не обнаружил, что мой путь назначения недействителен.

Zipalign предоставит вам эту ошибку, даже если apk отлично действует, но

  • Недопустимый путь к apk
  • назначение недействительно или не существует
  • Недопустимые разрешения (apk заблокирован другой программой)

Ответ 2

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

Пример строки команды, если файл "origin.apk" находится в папке с именем "storage" в каталоге C:

zipalign -f -v 4 "c:\storage\origin.apk" "c:\storage\done.apk"

Удостоверьтесь, что вы используете косую черту над клавишей ввода... многие "примеры", которые я видел, используют один ключ shift, и это не сработает. Это займет apk под названием "origin.apk" и zipalign, а затем сохранит его в том же каталоге, что и файл "done.apk".

Возможно, это просто на Vista, я не знаю. Я использую 32-разрядную Windows Vista.

Ответ 3

В моем случае я запустил команду из каталога, в котором был неподписанный apk, и он отлично работал.

cd /platforms/android/build/outputs/apk
zipalign -v 4 android-release-unsigned.apk signed.apk 

Таким образом, мне не нужно было беспокоиться о указании каталога.

ps: Я сделал это на ubuntu.

Ответ 4

Я удалил файл apk в каталоге Deploy, и тогда экспорт работал нормально.

Ответ 5

Мне пришлось предоставить полный путь для файла unsigned APK:    платформы/Android/построить/выходы/APK/андроид-релиз-output.apk

Ответ 6

Если ваш pre-align APK превышает 2 ГБ, это также вызовет эту проблему. Протестировано с помощью средств сборки 23.0.1 на компьютере с Windows 10.

Ответ 7

Я получил эту ошибку, потому что у меня не было права на запись в целевой каталог. Поэтому изменение разрешения разрешило проблему.

Ответ 8

Иногда простое\вместо пути/в пути к файлу назначения может привести к этому. Дважды проверьте свои мультиплатформенные файлы ant!

Ответ 9

У меня была такая же проблема с моей командой zipalign. Выходной путь был правильным, но папки не существовали, что было указано в выходном пути, поэтому я создал папки вручную, а затем все работало нормально.

Ответ 10

Если целевой файл уже существует и открыт другим процессом, вы увидите эту ошибку.

Метод решения: переименуйте файл назначения или закройте приложение, которое уже открывает файл.

Ответ 11

Проверьте доступное место на целевом диске. Я получил ту же ошибку, потому что мой диск был заполнен: -)

Ответ 12

В моем случае проблема была в папке с именем utf-8. Я сменил его на английский и работал. Я использую Windows 8 x64 Enterprise edition.

Ответ 13

Эта проблема возникла для меня, когда у меня была открыта папка bin в проводнике Windows.

Затем я попытался удалить старый файл apk (который инструмент Export безуспешно пытался переписать), но я не мог этого сделать, поскольку у меня не было необходимого разрешения или потому что у какого-то другого процесса была блокировка в файле.

Решение состояло в том, чтобы перезагрузить компьютер, который освободил блокировку файла apk. Инструмент Eclipse Export работал отлично.

Update Не удалось удалить старый файл apk в проводнике Windows или в окне команд (даже когда я открыл его с правами администратора), но я мог удалить apk при просмотре в моем клиентском приложении FileZilla FTP. Очевидно, что это гораздо удобнее перезагрузки компьютера.

Ответ 14

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

Ответ 15

Добавление моего решения:

Моя проблема заключалась в том, что папка с моими ресурсами была слишком большой, и, должно быть, она каким-то образом возилась с zipping. Мне пришлось удалить файлы в папке с ресурсами (или добавить их в _pre_production).

Ответ 16

Это твоя ошибка
Вы пытаетесь установить или сослаться на zipalign, а затем запустить zipalign -v 4 app-release-unsigned.apk HelloWorld.apk
Нет, это то, что вы должны сделать, установить ссылку на zipalign и одновременно запустить команду
как это
/Users/s****/Library/Android/sdk/build-tools/28.0.3/zipalign -v 4 app-release-unsigned.apk MyApp.apk Ваш apk будет построен немедленно.

Ответ 17

В моем случае, в Linux (Mint), я должен был установить разрешение на выполнение zipalign вручную, а затем он работал как шарм.

Ответ 18

Для mac

Поскольку результат кодирования не соответствует, вы должны сделать это:

  • открыть eclipse.ini
  • добавить -Dfile.encoding=utf-8