앱을 게시 할 때 zip-align을 찾을 수 없습니다.


123
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 도구 (오늘 출시 된 23 개)와 SDK 플랫폼 도구 (오늘 출시 된 20 개)를 사용하고 있습니다. APK를 얻었지만 Google Play에 업로드하려고하면 zip 정렬이 아니라는 오류가 발생했습니다.

zipalign을 수동으로 실행하면 apk가 수정되지만 그 원인과 수정 방법을 아는 사람이 있습니까?


7
최신 SDK 도구 (23)가 제대로 패키징되지 않았습니다. 이 릴리스에서 많은 도구에 문제가 있습니다.
MeetM

답변:


223

나는 같은 문제가 있었다. 이 문제를 해결하기 위해 sdk / build-tools / android-4.4W 폴더에서 sdk / tools /로 Zipalign 파일을 복사합니다.

수정 됨 : Google이 Android 용 SDK를 업데이트했기 때문에 새로운 빌드 도구가이 문제를 해결합니다. 그래서 아래 게시물에서 Pang이 제안한대로 모두에게 Android SDK Build-tools 20 으로 업데이트하도록 권장했습니다.


1
OSX의 심볼릭 링크가 아닌 파일의 복사본이어야합니다. 나는 심볼릭 링크 (보통 충분하다)를 사용했지만 여전히 찾지 못했습니다.
SnowInferno

7
\ 빌드 도구 \ SDK 20.0.0 - 나는 아래에 그것을 발견
shimi_tap을

13
다른 디렉토리에서 exe를 복사하지 마십시오. SDK 빌드 도구 V20을 설치하려면 SDK 관리자를 사용하여
darksider474

2
ant 빌드 릴리스를 사용하는 경우 project.properties에 sdk.buildtools = 19.1.0 또는 = 20.0.0을 추가해야합니다. 또한 ANT build.xml에서 zipalign 속성 세트가 올바른 도구 체인 버전을 가리 키도록 변경되었습니다.
david

10
Android SDK Build-tools Rev. 20을 설치하는 데 필요한 몇 가지 답변에서 언급했듯이. 그러나 여전히 동일한 오류가 발생합니다. 그런 다음 "sdk / build-tools / 20.0.0"에서 "sdk / tools /"로 Zipalign을 복사해야합니다
Kevin

96

Android SDK Build-tools 20을 설치하여 수정했습니다.

에서 이클립스풀다운 메뉴안드로이드 SDK 관리자 확인 안드로이드 SDK 빌드 - 도구에게 목사 (20) , 다음을 클릭합니다 설치 N 패키지 (들) ... 설치 시작 버튼을 클릭합니다.


26
나는 이것을 한 후에 일식을 다시 시작해야했다
Cigogne Eveillée 2014 년

목사 23.0.0이 문제를 해결 ... 그것은 최신 빌드에 유용
자라 Janaksinh

20

설치하면 사용할 수있게됩니다

Android SDK Build-tools Rev.20

8

나는 이것을 위해 비디오를 만들기로 결정했다. 나는 그것을 도구에 계속 붙여 넣었지만 아쉽게도 나를 위해 작동하지 않았다. 나는 그것을 플랫폼 도구로 옮겼고 즉시 퍼블리싱합니다. 나중에 이클립스를 다시 시작해야합니다.

누락 된 zipalign 수정을위한 자습서


1
멋진 영상 덕분에, 나를 위해이 도구가 아닌 플랫폼 툴에 zipalign을 추가하여 일
shimi_tap

이 링크는 나를 대신 플랫폼 도구 빌드 도구에서 zipalign.exe 이동의 도움을했다, 난 그냥 PATH의 ENV 폴더 빌드 도구를 추가
폴 Samsotha

8

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

2
Windows의 경우 (내 zipalign 경로) : C:\Users\Machine\AppData\Local\Android\Sdk\build-tools\27.0.3\zipalign.exe My Example cmd& 'C:\Users\Machine\AppData\Local\Android\Sdk\build-tools\27.0.3\zipalign.exe' -v 4 './platforms/android/app/build/outputs/apk/release/app-release-unsigned.apk' './platforms/android/app/build/outputs/apk/release/app-release-signed.apk'
Nadim

8

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

또는 터미널을 닫고 다시 시작하십시오.


단 한 번의 편집 : 마지막 줄에서 "내보내기"를 놓쳤습니다. :-)
Manan Shah

7

Mac에서는 다음을 수행했습니다.

  1. o / s에서 찾기 (19 및 20 용 빌드 도구를 이미 다운로드했습니다)

  2. Ctrl-Open을 눌러 인터넷의 앱을 허용하세요.

  3. sdk / build-tools / android-4.4W 폴더에서 sdk / tools /로 이동합니다. 아휴.


4

SDK 업데이트 20, 빌드 및 플랫폼 도구 버전 20, sdk 통행료 23 개로 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.+'


명확하게 말하면 바이너리를 android sdk 폴더에서 android studio의 sdk 폴더로 이동하십시오. 좋아요 : C : \ Program Files (x86) \ Android \ android-sdk \ tools \ zipalign.exe to C : \ Program Files (x86) \ Android \ android-studio \ sdk \ tools \ zipalign.exe
Joshua G

구글은 안드로이드 스튜디오 (0.8.1)을 업데이트하고 문제는이 새 버전으로 더 이상 발생하지 않습니다
DooMMasteR

3

SDK 관리자에서 "build-tools"를 설치했는지 확인하십시오. 기본 상태의 광산은 이렇게하지 않았습니다.


3

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")은 사용자의 build-tools 버전과 일치해야합니다.

행운을 빕니다 :)



1

내 수정은 digiboomz 로 연결된 비디오에서 볼 수 있듯이 sdk \ build-tools \ android-4.4W 에서 sdk \ platform-tools 로 zipalign.exe를 복사하는 작업을 수행했으며 sdk \ tools에서 복사하지 못했습니다.


1

명령 줄에서 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


1

Eclipse를 사용하는데 이것은 업데이트 중에 고장났습니다. 위의 답변이 그렇지 않은 것처럼 나를 위해 일한 것은 다음과 같습니다.
개미의 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 Manager'에 설치된 것으로 표시된 'Android SDK Build-tools'의 가장 높은 버전에 해당합니다. 그래서 여기에서 zipalign.exe (Android Studio 설치에서 얻었습니다!)를 복사하고 서명 된 앱이 이제 자동으로 다시 zipalign됩니다!


1

C : \ Program Files \ Android SDK 디렉터리의 SDK Manager.exe에서 관리자로 실행하여 해결했습니다.

그 후 업데이트 된 빌드 도구를 모든 저장소


1

이 문제를 해결하는 단계,

  1. 최신 버전의 Android SDK 빌드 도구 설치
  2. android-sdk \ build-tools \ 폴더에서 zipalign.exe를 사용할 수 있는지 확인하십시오. 예 : android-sdk \ build-tools \ 21.1.0 \
  3. 일부 이전 버전의 Android에서는 zipalign.exe를 찾을 수 없습니다. 당황하지 말고 zipalign을 사용할 수있는 다른 버전을 확인하십시오.
  4. project.properties 파일을 열고 zipalign.exe가있는 위치를 가리 키도록 build-tools를 구성하십시오. 예 : sdk.buildtools = 21.1.0.
  5. Eclipse를 다시 시작하고 내보내기를 다시 시도하십시오. 작동합니다.

1

OSX 10.10.5, Android Studio 및 SDK가 설치된 Mac에서 경로는 다음과 같습니다.

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

1

Gradle 용 Android 플러그인 버전 2.2.0 (2016 년 9 월) 이후 Zipalign gradle 작업이 더 이상 사용되지 않습니다.

계속 사용하려면 gradle.properties 파일에 android.useOldPackaging = true를 추가하십시오.

자세한 설명을 보려면 여기 를 클릭 하십시오 .

하나의 작업에서 압축, 서명 및 압축을 처리하는 새로운 기본 패키징 파이프 라인을 채택하여 빌드 성능을 향상시킵니다. gradle.properties 파일에 android.useOldPackaging = true를 추가하여 이전 패키징 도구를 사용하도록 되돌릴 수 있습니다. 새 패키징 도구를 사용하는 동안 zipalignDebug 작업을 사용할 수 없습니다. 그러나 createZipAlignTask (String taskName, File inputFile, File outputFile) 메서드를 호출하여 직접 만들 수 있습니다. 이제 APK 서명은 기존 JAR 서명 외에도 APK 서명 체계 v2를 사용합니다. 모든 Android 플랫폼은 결과 APK를 허용합니다. 서명 후 이러한 APK를 수정하면 v2 서명이 무효화되고 기기에 설치되지 않습니다. 인용구


0

zipalign로 이동 한 build-tools\19.1.0하고 build-tools\20.0.0, 당신이 그들 중 하나를 사용한다 가정 대상 SDK의 의존


0

Android SDK 플랫폼 (4.4W)을 제거한 다음 다시 설치하여 문제를 해결했습니다. 또한 설치 후 Eclipse를 다시 시작했습니다.


0

제 경우에는 SDK 빌드 도구 20이 이미 설치되어 있습니다. Tools 폴더에 zipalign.exe를 복사했지만 성공하지 못했습니다.

그 후 이전 폴더를 제거하거나 이름을 바꾸지 않고 Eclipse를 업데이트했음을 알았습니다.

그래서 나는 :

1) 이전 Eclipse 폴더 이름 변경 2) Eclipse 다시 시작

Eclipse는 여전히 이전 폴더를 사용하려는 Eclipse이기 때문에 Eclipse가 Android 환경 설정을 수정하도록 요청했습니다.


0

Google은 빌드 도구 버전 : 23.0.3에서이 실수를 수정합니다. 이제 zipalign이 제대로 패키징되고 모든 것이 잘 작동합니다.


0

일반적으로 zipalign.exe는 "Android 관리자"(또한 "Android", "Android SDK"등)와 가깝기 때문에 Windows 검색에서 "Android Manager" 를 검색하고 명령 위를 마우스 오른쪽 버튼으로 클릭 하여 열 수 있습니다. 파일 위치 . 당신은 아마도 something \ Android \ android-sdk \ tools에있을 것 입니다. 그런 다음 폴더를 반환하고 Android \ android-sdk \ build-tools \ 23.0.3으로 이동하면 됩니다. zipalign이 있습니다. 더블 클릭으로 사용할 수 없을 수도 있으므로 CMD 에서 사용할 zipalign 파일 의 모든 경로를 복사 해야합니다. 입력해야하는 최종 코드는 다음과 같습니다.

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


0

내가 완전히 절망적 일 때 다음을 수행하여 공식 zipalign.exe 를 찾을 수있었습니다 . 짧은 대답은 사이트의 공식 (공개는 아님 :-) 부분의 링크를 사용하는 것입니다.

https://dl.google.com/android/repository/build-tools_r28-rc1-windows.zip

2018 년 이후에이 영수증을 사용한다면 아마도 전체 설명이 필요할 것입니다.

  1. Android Studio를 열고 이동

    Android Studio->Tools->Android->SDK Manager->Android SDK->SDK update site
  2. 텍스트 편집기 링크를 작성하고 브라우저에서 엽니 다. 제 경우에는 첫 번째 링크가 저에게 효과적이었습니다.

    https://dl.google.com/android/repository/repository2-1.xml
  3. 최신 패키지 빌드 도구를 찾으십시오. 제 경우에는 build-tools_r28-rc1-windows.zip 이지만 최신 정보를 찾을 수 있습니다.

    Ctrl+F build-tools_
  4. URL에서 마지막 부분을 내가 한 것처럼 찾은 패키지 이름으로 대체하십시오.

    https://dl.google.com/android/repository/build-tools_r28-rc1-windows.zip
  5. 패키지를 다운로드하고 압축을 풀고 다행스럽게도 공식 파일을 찾으십시오.

    zipalign.exe

도움이된다면 귀하의 의견은 환영합니다.


Android Studio-> Tools-> Android-> SDK Manager-> Android SDK-> SDK Tools-> "Android SDK Build-Tools 28-rc1"을 확인한 다음 적용하고 빌드 도구를 설치하면 zipalign을 찾을 수 있습니다. 설치 후 SDK \ build-tools \ 28.0.0-rc1의 exe.
Richard Chan

당신이 맞습니다, 그것은 설치되어야하지만 제 경우에는 설치되지 않았습니다. 확인했습니다. 이 레시피는 모든 시도 후에도이 파일이없는 사람들을위한 것입니다.
Roman

0

이 문제를 해결했습니다.

Android Studio> 환경 설정> SDK 도구를 열고 "Android SDK 빌드 도구"를 확인하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.