42

我已经使用 Android Studio 创建了一个签名的 apk,现在我要对其进行 zipalign,我已经阅读了以下内容:http: //developer.android.com/tools/help/zipalign.html 但我仍然不确定在哪里添加代码行,它是否在 Gradle 文件中,我在文件中的哪个位置添加代码行?

4

6 回答 6

85

在主模块的build.gradle文件中,您可以拥有多种构建类型以及调试类型。

您可以通过使用在任何buildType中指定 zipAlign 特征

buildTypes {

     release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        zipAlignEnabled true
    }
}

注意:旧版本使用zipAlign, 而不是zipAlignEnabled

无论您是否定义,始终为调试和发布 buildTypes 创建默认 gradle 任务。Debug 用于调试目的和 Release for Signed Application (Build >> Generate Signed Apk)。您必须为发布版本定义您的签名配置。

检查下面提到的链接中的构建类型部分,了解您可以在构建类型中使用的其他属性

http://tools.android.com/tech-docs/new-build-system/user-guide

于 2014-01-20T19:44:06.030 回答
6

如果您已从 Android Studio 创建.apk文件(发布模式),则您的 APK 已对齐。该zipalign步骤是Android Studio 中构建过程的一部分。

您可以通过以下方式检查 APK:

zipalign -c -v 4 {APP}.apk

要对齐 APK,请运行:

zipalign -v 4 {APP}.apk {ZIPALIGNED_APP}.apk
于 2015-12-30T07:35:45.863 回答
4

将类路径从 'com.android.tools.build:gradle:2.2.0-alpha3' 设置为

类路径'com.android.tools.build:gradle:2.1.2'

于 2016-07-09T09:07:59.233 回答
1

zipalign 在ADT/sdk/build-tools/android4.4W

  1. 复制android4.4W文件夹

  2. 粘贴进去yourproject/platforms/android/build/outputs/apk

  3. 现在,复制yourkey.keystore and your project.apk

  4. 将它们粘贴到android4.4W完整路径中

    yourproject/platforms/android/build/outputs/apk/android4.4W

  5. 那么,$ zipalign -v 4 project.apk wowdone.apk.

访问以获取更多详细信息:http: //prehow.com/convert-wordpress-to-android-app-tutorial.html

就是这样,希望这个答案对你有所帮助。

于 2015-06-24T06:44:44.283 回答
1

对于完整的签名过程,请按照步骤操作。(构建签名的 apk 后手动对齐 Zip)

第 0 步:在签署 apk 之前,在您的应用程序 module.gradle 文件中添加代码:将 zippAlignEnable 和 minifyEnable 设置为 true。

buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            //zipAlignEnabled true 
           //uncomment for automatically zip aligned by studio
        }
    }

第 1 步:签署您的 APK,发布模式更多信息

第 2 步:找到位置:.\your sdk\build-tools\24.0.0

第 3 步: 复制您的 .jks 密钥库文件和签名的 APK,然后将其粘贴到此处。

第 4 步:打开命令提示符(适用于 windows)。设置路径。您粘贴内容的位置。

第五步:输入命令: zipalign -f -v 4 infile.apk outfile.apk

这里 infile 是我签名的 apk,outfile 是上传到 Play 商店的文件。

完毕...!

如果 cmp 将得到 BUILD 失败。

有关错误(Zipalign 构建失败)的更多信息,请参见此处,请执行以下操作

1)重启并打开Android Studio,

2)关闭cmd,然后重新打开。

3)现在做上面的过程。

编辑:resources.arsc BAD-1 发现错误

 set classpath 'com.android.tools.build:gradle:2.2.0-alpha3'

classpath 'com.android.tools.build:gradle:2.1.2'

快乐发布 :)

于 2016-06-27T13:17:28.360 回答
0

这对我有用:

  1. 将最后一个版本文件夹 22.0.1 复制到 yourproject/platforms/android/build/outputs/apk (比如版本 22.0.1 是我的最后一个版本)

  2. 将 yourkey.keystore 和 project.apk 复制到此版本文件夹 22.0.1。

  3. 在 yourproject/platforms/android/build/outputs/apk/22.0.1 路径下,运行以下命令:

    zipalign -v 4 name_of_current.apk name_of_wanted.apk
    
  4. name_of_wanted.apk 应该位于 yourproject/platforms/android/build/outputs/apk/22.0.1 下

于 2015-07-23T15:53:12.557 回答