Gradle: como executar tarefas personalizadas após a criação de uma biblioteca Android?
Eu tenho uma biblioteca Android, está gerando um debug.aar e um release.aar, preciso copiar o release.aar para outra pasta como referência a outra parte do projeto.
O que eu fiz agora é nesta build.gradle da Biblioteca Android que defini uma tarefa:
task copyAARToCommonLibs(type: Copy) {
from('../build/outputs/aar') {
include '*-release.arr'
}
into '../SomeSampleApps/libs'
}
Estou tentando executar esta tarefa depois que o arr é gerado, que eu assumo é o estágio assembleRelease, então tentei fazer isso neste build.gradle
assembleRelease.doLast{
copyAARToCommonLibs
}
Eu construo o projeto geral usando
gradle build
Mas essa tarefa está sendo executada no início de todo o processo.
Eu também tentei isso:
applicationVariants.all { variant ->
variant.assemble.doLast {
copyAARToCommonLibs
}
}
dentro da propriedade android {} (acho que é assim que se chama?) Ao executar o gradle build, ocorreu este erro: Não foi possível encontrar a propriedade 'applicationVariants'
Encontrei este trecho:
tasks.withType(JavaCompile) { compileTask -> compileTask.dependsOn copyAARToCommonLibs }
Mas parece que isso faz com que a tarefa seja executada após a compilação, não sei exatamente como modificar isso para executar após a montagem.
Alguém poderia me corrigir onde eu errei e como faço para que essa tarefa de cópia funcione após a geração do arquivo .arr?