当我尝试在apk上运行Zipalign时,我得到错误"Command not found"
我不熟悉在MAC上使用终端命令,但我已导航到SDK / Tools文件夹并运行以下命令:
zipalign -v 4 Project1.apk Project1-aligned.apk
我找不到Command
我尝试将apks放在Tools文件夹中,结果相同。
有人可以帮我理解应该找到apks的位置以及我应该从哪里开始zipalign吗?
谢谢,我对此感到非常沮丧,因为它看起来很简单。
也许目前的目录不在您的路径中?
尝试在命令之前添加“./”
./zipalign -v 4 Project1.apk Project1-aligned.apk
Mac的解决方案
此错误基本上意味着终端无法找到zipalign文件。因此,您可以使用命令(位于Android build-tools文件夹中)键入zipalign文件的完整路径
/Users/username/Library/Android/sdk/build-tools/26.0.1/zipalign -v 4 android-armv7-release-unsigned.apk helloWorld.apk;
如果您不知道zipalign文件的位置,那么只需使用此命令即可
find ~/Library/Android/sdk/build-tools -name "zipalign"
将其添加到路径中
在终端上
找到zip对齐的路径
find ~/Library/Android/sdk/build-tools -name "zipalign"
路径:/Users/username/Library/Android/sdk/build-tools/26.0.1/zipalign
输入那里找到的路径
sudo nano /etc/paths
现在在新的终端上你可以看到zipalign
如果您使用的是Windows,请更改命令提示符以指向包含zipalign.exe的文件夹,然后运行该命令。另外,我发现你没有使用完整的命令:
zipalign [-f] [-v] 4 Input.apk Output.apk
cd android-sdk/build-tools/22.0.0/
- 将目录更改为android sdk文件夹,构建工具并选择版本(我使用22.0.0)。
然后在提示符下键入:
./zipalign -v 4 /MyApp/android-x86-release-signed.apk ~/MyApp/android-x86-release-signedandzipped.apk
这对我有用。我尝试了上面的其他解决方案没有成功。我只需要使用正确的文件夹运行命令,但在我检查的其他资源中没有明确解释。
在使用zsh控制台的mac上,我的解决方案是
命令1)
find ~/Library/Android/sdk/build-tools -name "zipalign"
----------------------------------------------------------
/Users/macOs/Library/Android/sdk/build-tools/28.0.3/zipalign
/Users/macOs/Library/Android/sdk/build-tools/26.0.2/zipalign
/Users/macOs/Library/Android/sdk/build-tools/25.0.2/zipalign
/Users/macOs/Library/Android/sdk/build-tools/27.0.3/zipalign
命令2)
echo "export PATH=\$PATH:~/Library/Android/sdk/build-tools/28.0.3/" >> ~/.bash_profile && . ~/.bash_profile
命令3)
ls -l ~/Library/Android/sdk/build-tools/
命令4)
zipalign -v 4 app-release-unsigned.apk nameApp.apk
新手的2小时简历(像我一样):
如果键入以下命令:
zipalign -v 4 platforms/android/app/build/outputs/apk/release/app-release-unsigned.apk app-release.apk
女巫给你:
command not found: zipalign
可能是路径错了。如果你有这个:
Unable to locate an executable at "/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home/bin/apt" (-1)
它证实它不是真的应该如此。因此,要执行zipalign并最终发布您的应用程序,您必须进入正确的存储库并执行命令。
1.转到正确的repo执行命令:
路径为cd / Users / xxxyour_user_namexxx / Library / Android / sdk / build-tools / xxxxx /
cd /Users/greg/Library/Android/sdk/build-tools/28.0.3
2.执行你的zipalign命令,不要忘记精确的apk文件的路径:
显然,机会“greg”和“myapp”与您的用户名和应用程序名称。
./zipalign -v 4 /Users/greg/Desktop/AppLocal/myapp/platforms/android/app/build/outputs/apk/release/app-release-unsigned.apk /Users/greg/Desktop/AppLocal/myapp/platforms/android/app/build/outputs/apk/release/app-release.apk
希望能帮助到你。
对我来说这很完美,我将zipalign文件从android路径复制到我想运行命令的文件夹,然后键入./zipalign -v 4 android-release-unsigned.sdk nameofapp.apk
注意:它是在Mac上
%ANDROID_HOME%\\build-tools\\25.0.2\\zipalign -v 4 .\\platforms\\android\\build\\outputs\\apk\\input.apk .\\path\\ output.apk
首先,如果您的Android主页设置,那么你可以只cd $ANDROID_HOME
和open .
(这应该是 - / Users / username / Library / Android /,你也可以cd到那条路径)
接下来,导航到“sdk / build-tools / 25.0.3 /”(在这种情况下,版本25.0.3,您的版本可能不同)。
在您的终端(apk提示),将zipalign拖到终端和...../zipalign -v -p 4 my-app-unsigned.apk my-app-unsigned-aligned.apk
。应该工作正常。
希望能帮助到你。
从github下载的zipalign文件
zipalign exec copy and paste in your Project1-aligned.apk directory
./zipalign -v 4 Project1.apk Project1-aligned.apk
您将在/path/to/sdk/build-tools/<build-tools-version>/zipalign
找到zipalign工具,而不是在tools文件夹中。
在我的情况下,我按照下面的答案
简而言之./zipalign对我来说是解决方案。
我使用Windows与git bash /命令提示符
需要在环境变量中配置zipalign.exe。
所以包括sdk文件夹'build-tool'和你正在构建的android版本文件夹。
e.g. E:\android-sdk\build-tools\22.0.1
它应该包含'zipalign.exe'。现在你可以用户了
zipalign -v 4 Project1.apk Project1-aligned.apk
从任何位置使用命令行工具。
大拇指为我,所以我可以帮助更多的开发人员。
您可以使用此命令找到正确的路径:
find ~/Library/Android/sdk/build-tools -name "zipalign"
~/Library/Android/sdk/build-tools/xxxx/zipalign
将其拖到终端或将其保存在路径中。 xxxx - >版本
Zipalign是一个位于$ANDROID_HOME/build-tools/{android-version}/
的命令。
希望它有所帮助。
一个简单的单行:
echo "export PATH=\$PATH:~/Library/Android/sdk/build-tools/23.0.1/" >> ~/.bash_profile && . ~/.bash_profile
确保将23.0.1替换为已安装的版本
$ ls -l ~/Library/Android/sdk/build-tools/
total 0
drwxr-xr-x 23.0.1 <---
现在你应该能够使用zipalign,无论你当前的工作目标
$ zipalign
搜索并引用它...我在这里有它并像这样引用它:
/Users/lioncio/Desktop/adt-bundle-mac-x86_64-20140702/sdk/build-tools/android-4.4W/zipalign bla bla bla(命令的所有选项!)
并且工作了
放松! ,只需在终端使用Locate
命令,它就会出来
tom-MacBook-Air:kavform_app tom$ locate zipalign
/Users/tom/Software/android-sdk-macosx/build-tools/24.0.1/zipalign
/Users/tom/Software/android-sdk-macosx/docs/tools/help/zipalign.html
就我而言,它被埋在这里
/Users/tom/Software/android-sdk-macosx/build-tools/24.0.1/zipalign -v 4 /Users/tom/kavwork/kavform/kavform_app/platforms/android/build/outputs/apk/android-release-unsigned.apk BrideToBe.apk
导航到zip对齐的路径,并将其包含在命令中
/Users/ignatiusandrew/Library/Android/sdk/build-tools/25.0.2/zipalign 4 android-release-unsigned.apk igi.apk