所有package-variant-Release任务后,Gradle Run Custom Task

时间:2018-05-16 06:51:41

标签: android gradle android-gradle

我的自定义任务解压缩apk并为某些文件收集sha1,所以我创建了我的任务但我想在每次生成任何apk(任何内置或任何变体)时执行它,不知道如何在完成之后触发我的任务apk已创建。请帮忙。

有些事情如下

android {
    task customTask {}

    afterEvaluate {
        package<VariantName>Release.finalizedBy(customTask)
    }
}

生成每个变种apk后,我需要运行我的自定义任务。我可以通过明确指定任务名称(如

)为一个变体执行此操作
    afterEvaluate {
        packageDbRelease.finalizedBy(customTask)
    }

但我还有5个变种,比如packageARRelease等,之后我想运行相同的自定义任务。

1 个答案:

答案 0 :(得分:0)

您需要为每个构建变体创建一个任务:

android {
    applicationVariants.all { variant
        task "customTaskFor${variant.name.capitalize()}" {
            // configure your task
        }
        tasks["package${variant.name.capitalize()}Release"].finalizedBy "customTaskFor${variant.name.capitalize()}"
    }
}