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,我会收到一个错误,抱怨它不是拉链对齐的 .
运行zipalign手动修复apk,但是有谁知道是什么原因造成的,以及如何修复它?
24 回答
解决这个问题的步骤,
安装最新版本的Android SDK Build-Tools
检查zipalign.exe是否在android-sdk \ build-tools \文件夹中可用Android的SDK \集结工具\ 21.1.0 \
在某些较旧版本的Android中,您可能找不到zipalign.exe . 不要惊慌,检查任何其他版本的zipalign可用 .
打开project.properties文件并配置build-tools以指向zipalign.exe所在的位置 . 例如sdk.buildtools = 21.1.0 .
重新启动eclipse并再次尝试导出 . 它应该工作 .
我使用Eclipse,这在更新期间中断了 . 这对我有用,因为上面的答案没有 .
我检查了ant的build.xml预期找到zipalign.exe的位置 .
在:
C:\Development\Android\android-sdk\tools\ant\build.xml
zipalign定义为:表明其预期在:
此目录对应于“Android SDK Manager”中安装的“Android SDK Build-tools”的最高版本 . 所以,这就是我复制zipalign.exe(我从Android Studio安装中获得的!)和已签名的应用程序现在再次自动压缩的地方!
我有同样的问题 . 为了解决这个问题,我将Zipalign文件从sdk / build-tools / android-4.4W文件夹复制到sdk / tools /
Edited: 自谷歌更新Android版SDK以来,新的构建工具确实解决了这个问题 . 所以我鼓励大家按照Pang在下面的帖子中的建议更新到 Android SDK Build-tools 20 .
我通过安装Android SDK Build-tools 20修复了它:
在 Eclipse → Pull Down Menu → Window → Android SDK Manager 中,选中 Android SDK Build-tools Rev. 20 ,然后单击 Install n package(s)… 按钮开始安装 .
如果安装它就可以使用了
我决定只为这个制作一个视频..我一直把它粘贴到工具中,但唉,这对我来说不起作用 . 我把它移到了平台工具上,然后马上发布了 . 之后必须重启eclipse .
Tutorial for fixing missing zipalign
我使用了zipalign的完整路径 . 对于mac,我在Finder中找到了可执行文件并单击它 . 然后,我发布了我的应用程序
代替
在Mac上,我做了以下事情:
在o / s上找到它(我已经下载了19和20的构建工具)
按Ctrl-Open以允许来自互联网的应用
将它从sdk / build-tools / android-4.4W文件夹移动到sdk / tools / . 呼 .
Mac / Linux:
这对我有用(你可能想用你的构建工具的版本替换 22.0.1 ):
编辑:〜/ .bashrc
并运行:
或者只是关闭终端并再次启动它 .
随着SDK更新到20,构建和平台工具的第20版以及23个sdk通行费,谷歌已经移动了很多东西 .
Gradle(如果您使用的是Android Studio)但是尚未更新以反映这些更改,如其他答案中所述,将
zipalign
二进制文件复制到/sdk/tools/
应该可以解决这个问题 .UPDATE: 自从Android Studio 0.8.1发布以来,问题现在似乎已修复......
你只需要更新你的
build.gradle
它应该再次正常工作compileSdkVersion 20
buildToolsVersion "20.0.0"
targetSdkVersion 20
如果您使用任何compat或支持库
compile 'com.android.support:appcompat-v7:20.+'
compile 'com.android.support:support-v4:20.+'
检查SDK管理器,它已经安装了“build-tools” . 我的默认状态,没有这样做 .
如果您使用gradle只需更新ypur gradle插件!
在build.gradle中更改以下行:
至:
这个对我有用 .
请注意,变量buildToolsVersion(对我来说“20.0.0”)必须与您的构建工具版本匹配 .
祝好运 :)
使用Android Studio 1.0,您必须使用
zipAlignEnabled true
我的修复工作将zipalign.exe从 sdk\build-tools\android-4.4W 复制到 sdk\platform-tools ,如digiboomz链接的视频和 did not work copying it in sdk\tools 所示
如果在命令行中找不到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
我在目录C:\ Program Files \ Android SDK中以管理员@您的SDK Manager.exe通过RUN解决
之后,您将获得更新的构建工具和任何存储库
自从Gradle的Android插件修订版2 . 2 . 0(2016年9月)以来,Zipalign gradle任务已被弃用 .
如果要继续使用它,请将android.useOldPackaging = true添加到gradle.properties文件中 .
单击here以获取详细说明 .
zipalign
已移至build-tools\19.1.0
和build-tools\20.0.0
,我假设您应使用其中一个取决于您的目标SDK我通过卸载Android SDK Platform(4.4W)修复它,然后重新安装它 . 我在安装后也重新启动了Eclipse .
在我的情况下,SDK Build Tools 20已经安装 . 我在工具文件夹中复制了zipalign.exe但没有成功 .
之后我注意到我更新了Eclipse而没有删除或重命名旧文件夹 .
所以我做了:
1)重命名旧的Eclipse文件夹2)重新启动Eclipse
Eclipse要求更正Android首选项,因为问题是Eclipse,它仍在尝试使用旧文件夹
在使用OSX 10.10.5的Mac上安装Android Studio和SDK的路径是
谷歌使用构建工具版本修复了这个错误:23.0.3现在zipalign打包正确,一切正常 .
通常,zipalign.exe已关闭"Android manager"(也是,"Android","Android SDK"等),因此您可以在Windows搜索中使用 search for "Android Manager" 并在命令和 open file location 上方给出 righ-click . 你可能在:某事\ Android\android-sdk\tools . 然后只需要返回一个文件夹并转到 Android\android-sdk\build-tools\23.0.3 . zipalign就在那里,您可能无法双击使用它,因此您必须复制 zipalign 文件的所有路径以在 CMD 中使用,您必须输入的最终代码将是:
当我完全绝望时,我做了以下,这让我找到了 official zipalign.exe . 简短的回答是使用网站官方(但不公开:-)部分的链接:
如果您在2018年之后使用此收据,您可能需要完整的解释:
如果它对您有所帮助,那么您的反馈就会很好 .