Gradle: ¿Cómo ejecutar una tarea personalizada después de construir una Biblioteca de Android?

Tengo una biblioteca de Android, está generando un debug.aar y un release.aar, necesito copiar el release.aar a otra carpeta como referencia a otra parte del proyecto.

Lo que he hecho ahora está en esta biblioteca de Android build.gradle. Definí una tarea:

task copyAARToCommonLibs(type: Copy) {
    from('../build/outputs/aar') {
        include '*-release.arr'
    }
    into '../SomeSampleApps/libs'
}

Estoy tratando de ejecutar esta tarea después de que se genera el arr, que supongo que es la etapa assembleRelease, así que intenté hacer esto en este build.gradle

assembleRelease.doLast{
   copyAARToCommonLibs
}

Construyo el proyecto general usando

 gradle build

Pero esta tarea se ejecuta al comienzo de todo el proceso.

También probé esto:

 applicationVariants.all { variant ->
     variant.assemble.doLast {
         copyAARToCommonLibs
     }
 }

dentro de la propiedad android {} (supongo que así se llama). Al ejecutar Gradle Build, recibí este error: No se pudo encontrar la propiedad 'applicationVariants'

Luego me encontré con este fragmento:

tasks.withType(JavaCompile) { compileTask -> compileTask.dependsOn copyAARToCommonLibs }

Pero parece que esto hace que la tarea se ejecute después de la compilación, no sé exactamente cómo modificar esto para que se ejecute después del ensamblaje.

¿Podría alguien corregirme donde hice mal y cómo puedo hacer que esta tarea de copia funcione después de que se genere el archivo .arr?

Respuestas a la pregunta(2)

Su respuesta a la pregunta