【发布时间】:2015-09-02 04:41:16
【问题描述】:
我想知道为 release 生成签名 .apk 的方法是否也对 apk 进行压缩对齐。在 android 页面 (http://developer.android.com/tools/publishing/app-signing.html#studio) 的方向上,尚不清楚 zipalign 是否是不同的步骤。
谢谢!
【问题讨论】:
我想知道为 release 生成签名 .apk 的方法是否也对 apk 进行压缩对齐。在 android 页面 (http://developer.android.com/tools/publishing/app-signing.html#studio) 的方向上,尚不清楚 zipalign 是否是不同的步骤。
谢谢!
【问题讨论】:
您可以在 build.gradle 文件中定义构建类型。
buildTypes {
debug {
storeFile file("debug.keystore")
}
release {
zipAlignEnabled true
}
}
调试 apk 时使用调试配置,创建发布 apk 时使用发布配置。
如果您在发布时将 zipAlignEnabled 设置为 true,则 apk 将被压缩对齐。如果不指定,则发布时默认值为 true,apk 将自动进行 zipalign。对于调试,默认值为 false。
详细了解构建类型和您可以在此处设置的其他可能属性:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Types
【讨论】:
Android 构建工具可以为您处理这个问题。 Android Studio 会自动对齐您的 APK。
使用以下命令确认existing.apk的对齐方式:
zipalign -c -v <alignment> existing.apk
是一个定义字节对齐边界的整数。这必须始终为 4(提供 32 位对齐),否则它实际上什么都不做。
标志:
-f : 覆盖现有的 outfile.zip -v :详细输出 -p : outfile.zip 应该对 infile.zip 中的所有共享对象文件使用相同的页面对齐方式 -c : 确认给定文件的对齐方式
【讨论】: