Я пытаюсь добавить пользовательскую задачу в свой проект Android build.gradle
, чтобы скопировать окончательный APK и Proguard mapping.txt
в другой каталог. Моя задача зависит от задачи assembleDevDebug
:
task publish(dependsOn: 'assembleDevDebug') << {
description 'Copies the final APK to the release directory.'
...
}
Я могу посмотреть, как сделать копию файла, используя стандартный тип задачи Copy
, согласно документам:
task(copy, type: Copy) {
from(file('srcDir'))
into(buildDir)
}
но предполагается, что вы знаете имя и расположение файла, который хотите скопировать.
Как найти точное имя и расположение файла APK, который был создан как часть задачи assembleDevDebug
? Является ли это доступным как собственность? Мне кажется, что я могу объявить файлы в качестве исходных данных для моей задачи и объявить их как выходы из задачи assemble
, но мой Gradle -fu недостаточно силен.
У меня есть специальная логика для ввода номера версии в имя файла APK, поэтому моя задача publish
не может просто предполагать имя и местоположение по умолчанию.