Подтвердить что ты не робот

Не удается найти zip-align при публикации приложения

cannot.find.zip.align=The zipalign tool was not found in the SDK.

Please update to the latest SDK and re-export your application
or run zipalign manually.

Aligning applications allows Android to use application resources
more efficiently.

Это сообщение, которое я получил, когда пытался опубликовать свое приложение. Я использую последнюю версию Android SDK Tools (23, которая была выпущена сегодня) и SDK Platform-tools (20, которая также была выпущена сегодня). Я получил APK, но если бы я попытался загрузить его в Google Play, у меня возникла ошибка, жалуясь, что он не выровнен по zip.

Запуск zipalign вручную исправляет apk, но кто-нибудь знает, что вызывает это и как его исправить?

4b9b3361

Ответ 1

У меня была та же проблема. И чтобы исправить это, я копирую файл Zipalign из папки sdk/build-tools/android-4.4W в sdk/tools/

Отредактировано: Поскольку Google обновил SDK для Android, новые средства сборки устраняют эту проблему. Поэтому я рекомендовал всем обновить до Android SDK Build-tools 20, как было предложено Pang в сообщении ниже.

Ответ 2

Я исправил его, установив инструменты Android SDK Build 20:

В Eclipse Выпадающее меню Окно Android SDK Manager, проверьте Android SDK Build-tools Rev. 20, затем нажмите кнопку Установить n пакетов (ов)..., чтобы начать установку.

Ответ 3

Он будет использоваться, если вы установите

Android SDK Build-tools Rev.20

Ответ 4

Я решил просто сделать видео для этого. Я все время вставлял его в инструменты, но, увы, это не работало для меня. Я сразу же переместил его в инструменты платформы и опубликовал публикацию voila. После этого перезапустите eclipse.

Учебное пособие по устранению недостающих zipalign

Ответ 5

На Mac я сделал следующее:

  • Найти его на o/s (я уже загрузил инструменты сборки для 19 и 20)

  • Нажмите Ctrl-Open, чтобы разрешить приложения из Интернета

  • Переместите его из папки sdk/build-tools/android-4.4W в sdk/tools/. Уф.

Ответ 6

Я использовал полный путь zipalign. Для mac я нашел исполняемый файл в Finder и нажал на него. Затем, чтобы опубликовать мое приложение, я побежал

/Users/username/development/sdk/tools/zipalign -v 4 HelloWorld-release-unsigned.apk HelloWorld.apk

вместо

zipalign -v 4 HelloWorld-release-unsigned.apk HelloWorld.apk

Ответ 7

Mac/Linux:

Это сработало для меня (вы можете заменить 22.0.1 на версию своих инструментов сборки):

Изменить: ~/.bashrc

export ANDROID_HOME=~/Android/Sdk/
export ANDROID_TOOLS=~/Android/Sdk/tools/
export ANDROID_BUILD_TOOLS=~/Android/Sdk/build-tools/22.0.1/
export ANDROID_PLATFORM_TOOLS=~/Android/Sdk/platform-tools/
PATH=$PATH:$ANDROID_HOME:$ANDROID_TOOLS:$ANDROID_PLATFORM_TOOLS:$ANDROID_BUILD_TOOLS

И запустите:

source ~/.bashrc

или просто закройте терминал и запустите его снова.

Ответ 8

При обновлении SDK до 20, версии 20 инструментов сборки и платформы и 23 сборов sdk, Google переместил много вещей.

Gradle (если вы используете Android Studio), но еще не обновлен, чтобы отразить эти изменения, как указано в других ответах, копирование двоичного кода zipalign на /sdk/tools/ должно сделать трюк на данный момент.

ОБНОВЛЕНИЕ:, так как выпущена версия Android Studio 0.8.1, проблема теперь исправлена ​​...
вам нужно только обновить свой build.gradle, и он должен снова работать нормально

compileSdkVersion 20

buildToolsVersion "20.0.0"

targetSdkVersion 20

и если вы используете какую-либо совместимую или поддерживающую библиотеку

compile 'com.android.support:appcompat-v7:20.+'

compile 'com.android.support:support-v4:20.+'

Ответ 9

Проверьте в менеджере SDK, что он установил "сборщики". Mine в состоянии по умолчанию этого не делал.

Ответ 10

Если вы используете gradle, просто обновите плагин ypur gradle!

Измените строку в файле build.gradle:

classpath 'com.android.tools.build:gradle:0.9.+'

в

classpath 'com.android.tools.build:gradle:0.11.+'

Это работает для меня.

Обратите внимание, что переменная buildToolsVersion (для меня "20.0.0" ) должна соответствовать вашей версии встроенных инструментов.

Удачи:)

Ответ 11

С Android Studio 1.0 вы должны использовать zipAlignEnabled true

Ответ 12

Мое исправление помогло скопировать zipalign.exe из sdk\build-tools\android-4.4W в sdk\platform-tools, как показано в видео, связанном с digiboomz, и не удалось скопировать его в sdk\tools

Ответ 13

Если команда zipalign не найдена из командной строки, добавьте путь файла zipalign к переменным окружения. Как уже упоминалось выше, никогда не бывает удобно изменять местоположение файла exe.

Для пользователей Windows:

Добавить в User->PATH->"path to zipalign folder"

В моем случае путь был C:\adt-bundle-windows-x86_64-20140702\sdk\build-tools\android-4.4W. В этой папке находится zipalign.exe

Эта ссылка может помочь вам установить путь и понять его http://www.voidspace.org.uk/python/articles/command_line.shtml#path

Ответ 14

Я использую Eclipse, и это произошло во время обновления. Здесь то, что работало на меня, как на ответы выше, не было. Я проверил, где ant build.xml должен найти zipalign.exe.

В: C:\Development\Android\android-sdk\tools\ant\build.xml zipalign определяется как:

<property name="zipalign" location="${android.build.tools.dir}/zipalign${exe}" />

который указывает на его ожидаемое значение:

C:\Development\Android\android-sdk\build-tools\18.0.1

Этот каталог соответствует самой высокой версии "Android SDK Build-tools", отображаемой как установленная в "Android SDK Manager". Итак, когда я скопировал zipalign.exe(который я получил из установки Android Studio!) И подписанные приложения теперь автоматически снова zipaligned!

Ответ 15

Шаги, чтобы исправить это,

  • Установить последнюю версию Android SDK Build-Tools
  • Проверьте, доступен ли файл zipalign.exe в папке android-sdk\build-tools\e.g. Android-SDK\сборки-инструменты\21.1.0\
  • В некоторых старых версиях Android вы не можете найти zipalign.exe. Не паникуйте, проверьте любой другой вариант, в котором доступен zipalign.
  • Откройте файл project.properties и настройте средства сборки, чтобы указать, в котором присутствует zipalign.exe. например sdk.buildtools = 21.1.0.
  • Перезапустите ваше затмение и повторите попытку экспорта. Он должен работать.

Ответ 16

я решил RUN в качестве администратора @вашего SDK Manager.exe в каталоге C:\Program Files\Android SDK

после этого вы получите обновленные инструменты построения любого репозитория

Ответ 17

Задача Zipalign gradle устарела с плагина Android для Gradle, версия 2.2.0 (сентябрь 2016 г.).

Если вы хотите продолжать использовать его, добавьте android.useOldPackaging = true в ваш файл gradle.properties.

Нажмите здесь для подробного объяснения.

Улучшает производительность сборки, применяя новый по умолчанию упаковочный конвейер, который обрабатывает записями, подписанием и zipaligning в одной задаче. Вы можете вернуться к использованию старых инструментов упаковки, добавив в файл gradle.properties файл android.useOldPackaging = true. При использовании нового инструмента для упаковки задача zipalignDebug недоступна. Однако вы можете создать его самостоятельно, вызвав метод createZipAlignTask (String taskName, File inputFile, File outputFile). Подписание APK теперь использует APK Signature Scheme v2 в дополнение к традиционному подписанию JAR. Все платформы Android принимают полученные APK. Любая модификация этих APK после подписания аннулирует их подписи v2 и предотвращает установку на устройство. Blockquote

Ответ 18

zipalign был перенесен на build-tools\19.1.0 и build-tools\20.0.0, я предполагаю, что вы должны использовать один из них в зависимости от целевого SDK

Ответ 19

Я исправил его, удалив Android SDK Platform (4.4W), а затем переустановив его. Я также перезапустил Eclipse после установки.

Ответ 20

В моем случае SDK Build Tools 20 уже был установлен. Я скопировал zipalign.exe в папку "Инструменты", но не успел.

После этого я заметил, что обновил Eclipse без удаления или переименования старой папки.

Итак, я сделал:

1) Переименованная старая папка Eclipse 2) Перезапуск Eclipse

Eclipse попросил исправить настройки Android, потому что проблема была Eclipse, которая все еще пыталась использовать старую папку

Ответ 21

На mac с OSX 10.10.5, Android Studio и SDK установили путь

/Users/mles/Library/Android/sdk/build-tools/23.0.1/zipalign

Ответ 22

Обычно zipalign.exe близок к "менеджеру Android" (также "Android", "Android SDK" и т.д.), поэтому вы можете искать "Android Manager" в поиске Windows и введите righ-click над командой и открыть расположение файла. Вероятно, вы находитесь в: что-то\ Android\android-sdk\tools. Тогда просто необходимо вернуть папку и перейти в Android\android-sdk\build-tools\23.0.3. Zipalign есть, возможно, вы не сможете использовать его с двойным щелчком, поэтому вам нужно скопировать весь путь к файлу zipalign, который будет использоваться в CMD, окончательный код, который вы должны ввести, будет примерно таким:

C:\Users\heitor\AppData\Local\Android\android-sdk\build-tools\23.0.1\zipalign.exe -v 4 android.apk android2.apk

Ответ 23

Google исправит эту ошибку с помощью инструмента сборки: 23.0.3 Теперь zipalign упакован правильно, и все работает нормально.