您上传了一个非zip对齐错误的APK

时间:2014-03-27 08:24:21

标签: android

我刚刚完成并通过android studio签署了apk 然后我通过apkprotect.com做了一个apk保护 当我试图将apk上传到Play商店时,我收到了此错误"您上传了一个非zip对齐的APK。您需要在APK上运行zip对齐工具并再次上传。 " 如果我上传原始apk我没有错误,

我试图在build.gradle中添加zipalign,但没有任何反应 我也试过禁用并启用proguard。

7 个答案:

答案 0 :(得分:27)

您可以在命令行中手动运行zipalign:

zipalign [-f] [-v] <alignment> infile.apk outfile.apk

请注意,zipalign位于$ {sdk.dir} \ tools

有关详细信息,请访问zipalign


[更新]

此外,如果您需要签名,您可以运行:

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore YOURKEYSTORE unsigned.apk alias_name

jarsigner 位于java JDK_HOME / bin内)

答案 1 :(得分:15)

我得到了同样的#34;你上传了一个没有拉链对齐的APK ...等等,等等#34;错误的时候我试图将我的.apk文件的DEBUG版本上传到Google Play。这有点误导性错误,因为真正的问题是您无法分发另外未使用Google Android Developer密钥签名的调试版本。 (您只能上传一个编译为发行版的.apk,并且必须进行签名,这必须在同一步骤中进行,至少如果您正在使用Eclipse)。

确保分发一个.apk文件,该文件是您的签名版本,如下所述:

http://developer.android.com/tools/publishing/app-signing.html#releasecompile

答案 2 :(得分:7)

这个问题及其答案是陈旧的;所以我们希望事情发生变化。截至今天,zipalign工具位于build-tools / [version] /下的ANDROID_HOME目录中,所以我的路径目前是:

/android-sdk/build-tools/22.0.0/zipalign

使用zipalign工具不一定是这里的答案,你真正需要做的就是签署你的apk。

答案 3 :(得分:4)

我正在使用Cordova,上传了已签名的APK但仍然出现此错误。

ziptool帮助了我,它位于~AndroidSDK\build-tools\24.0.0\zipalign.exe

例如:

"~\AndroidSDK\build-tools\24.0.0\zipalign.exe" -f -v 4 android-release-signed.apk android-release-signed-zipaligned.apk

答案 4 :(得分:1)

我使用Cordova和命令行收到此错误。我在Android Studio中打开了该项目,并使用Android Studio构建了已签名的apk,错误消失了。

答案 5 :(得分:0)

在不通过Android Studio的情况下使用Cordova node.js CLI时,必须更新PATH环境变量以包括android构建工具:

%ANDROID_HOME%\build-tools\29.0.2

显然,版本号会随着时间而变化。请记住关闭所有CLI窗口,然后重新打开它们以识别新添加的路径。

答案 6 :(得分:0)

将Xamarin用于VS2017的步骤:

  1. 构建项目
  2. 右键单击并Archive项目
  3. 使用Ad Hoc分发渠道
  4. 使用签名标识和Save As对APK进行签名,以生成ZIP对齐的APK。

您的APK可以上传到Google Play。