我有一个生成带有自定义名称的 .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/
文件夹中删除。
您能否提出一种自动清理此文件夹的方法。我希望只有最新的文件始终保留在文件夹中。谢谢
最佳答案
是的,有一种方法可以自动执行此操作。
第一步是创建一个 Gradle
任务来清理输出目录:
task cleanOutputDir(type: Delete) {
delete fileTree(dir: "build/outputs/apk/debug/")
}
在继续之前不要忘记同步 Gradle
。
之后,您需要配置 Android Studio 以在运行您的应用程序之前执行此任务。为此,请在 Android Studio 顶部单击您的默认构建,然后单击“编辑配置...”
然后,在执行Gradle Task
之前添加一个新的:
您将看到一个请求任务
配置的对话框,如下所示:
选择你的项目和模块(我有 3 个,通常只有一个),然后开始输入你的 Gradle Task
:
选择任务并按确定。然后你将在底部容器中有一个新任务。您需要做的最后一件事是将其移至三个任务的顶部,如图所示:
按“应用”、“确定”,然后运行您的应用程序。首先将删除 outputs/apk/debug
中的所有内容,然后立即开始编译和运行您的应用。
关于android - 当通过 Android Studio 生成新的 .apk 时,从输出文件夹中删除旧的 .apk,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50627069/