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

最佳答案

变量:

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

  • 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}"
    
    }
    

    08-26 06:44