Удалить старый .apk из выходной папки, когда новый .apk генерируется через Android studio - PullRequest
0 голосов
/ 31 мая 2018

У меня есть функциональность, которая генерирует .apk с пользовательским именем.(имя приложения + дата + время)

в gradle файле

def getTimestamp() {
    def date = new Date()
    return date.format('_dd-yyyy-MM_HH-mm')
}

и применении имени:

defaultConfig {
    archivesBaseName = "CUSTOM_NAME_$versionName" + getTimestamp()
}

Работает нормально, но все сгенерированные файлыимеют уникальное имя и не удаляются из папки outputs/apk/debug/.Можете ли вы предложить способ автоматизации очистки для этой папки.Я хочу, чтобы только последний файл всегда оставался в папке.Спасибо

1 Ответ

0 голосов
/ 31 мая 2018

Да, есть способ автоматизировать это.

Первый шаг - создать задачу Gradle для очистки выходного каталога:

task cleanOutputDir(type: Delete) {
   delete fileTree(dir: "build/outputs/apk/debug/")
}

Не забудьте синхронизировать Gradle перед продолжением.

После этого вам необходимо настроить Android Studio для выполнения этой задачи перед запуском приложения.Для этого нажмите на сборку по умолчанию в верхней части Android Studio и нажмите «Редактировать конфигурации ...»

enter image description here

Затем добавьтеnew перед выполнением Gradle Task:

enter image description here

Вы увидите диалоговое окно с запросом конфигурации task, как показано ниже:

enter image description here

Выберите свой проект и модуль (у меня 3, обычно есть только один) и начните набирать Gradle Task:

enter image description here

Выберите задачу и нажмите ОК.Тогда у вас будет новое задание в нижнем контейнере.Последнее, что вам нужно сделать, это переместить его в начало трех задач, как показано на рисунке:

enter image description here

Нажмите «Применить», «ОК ", а затем запустите ваше приложение.Сначала будет удалено все содержимое в outputs/apk/debug, а сразу после этого начнется компиляция и запуск вашего приложения.

...