1

我想构建一个 gradle Exec 任务,它将在我签名的 apk 文件上运行 android 的 zipalign,然后验证对齐。

4

1 回答 1

1

变量

  • ANDROID_HOME - 安卓 SDK 的路径
  • ZIPALIGN_PATH - zipalign 可执行文件的路径,相对于
  • ANDROID_HOME buildDir - gradle 的构建目录
  • OUTPUT_APK_PATH - 创建的 apk 文件的目录
  • APK_FILE_TO_ALIGN - 您要执行 zipalign 的 apk(应该签名)
  • APK_FILE_NAME - zipalign 后的文件名

压缩对齐任务:

task zipAlign(type: Exec) {

        executable "${ANDROID_HOME}${ZIPALIGN_PATH}"
        args "-f",  "-v", "4", "${buildDir}${OUTPUT_APK_PATH}${APK_FILE_TO_ALIGN}", "${buildDir}${OUTPUT_APK_PATH}${APK_FILE_NAME}"

}

zipalign 验证任务(注意这个任务依赖于 zipalign 任务):

task verifyZipAlign(type: Exec, dependsOn: 'zipAlign') {

        executable "${ANDROID_HOME}${ZIPALIGN_PATH}"
        args "-c",  "-v", "4", "${buildDir}${OUTPUT_APK_PATH}${APK_FILE_NAME}"

}
于 2016-06-09T21:47:10.637 回答