如何在构建后使用不同的构建变体解压缩apk?

时间:2019-06-03 13:36:00

标签: android gradle

我正在努力编写一个将解压缩apk的任务。我有几个构建变体,我想为每个变体动态创建一个任务。

applicationVariants.all { variant -> variant.outputs.all { output ->
    def assembleTaskName = 'assemble' + variant.getName().capitalize()
    def outputDir = new File(output.packageApplication.outputDirectory.toString() + "\\tmp") 
    def apk = output.outputFile //there is some code which generates correct apk name based on Build Variant
    tasks.getByName(assembleTaskName).finalizedBy(task("unzip" + apk.name, type: Zip) {
        outputDir.mkdirs()
        from zipTree(apk)
        into outputDir
    })
}}

尽管此代码在我需要的位置创建tmp文件夹,但不会提取apk,并且此代码似乎可以在我拥有的每个构建变体上运行,但我只需要在当前构建的变体上运行即可。我该怎么办?

0 个答案:

没有答案