Android gradle build 修改文件名称及目录

Android gradle build 修改文件名称及目录

android 在build的时候.输出apk的位置在于工程目录下的build文件夹下,名称也是固定的,但是在某些场景下需要对apk进行重名称,比如名称里含有当时间build的时间,或者把文件输出的目录放到桌面上.这里就说一下怎么控制apk的输出目录及生成apk的名称
流程其实很简单,这里直接上代码,

       //android域下加入如下代码
        android.applicationVariants.all { variant ->
            variant.outputs.each { output ->
                def outputFile = output.outputFile
                //获取文件的输出路径,这里把目录写到配置文件里
                def outDir = getOutPutDir('../build.properties')
                if (outDir == null) {
                    outDir = outputFile.parent
                }
                if (outputFile != null && outputFile.name.endsWith('.apk')) {
                    //这里修改apk文件名
                    def fileName = "android_${variant.buildType.name}_${defaultConfig.versionCode}-${defaultConfig.versionName}-${buildTime()}.apk"
                    output.outputFile = new File(outDir, fileName)
                }
            }
        }

//读到配置文件
def getOutPutDir(propFileName) {
    File file = file(propFileName);
    if (file.exists()) {
        def Properties properties = new Properties()
        properties.load(new FileInputStream(file))
        return properties['OUT_DIR']
    } else {
        return null
    }

}
### Gradle 构建配置文件使用指南 #### 一、理解Gradle构建配置文件的作用 Gradle构建配置文件是控制项目构建流程的核心文档。它不仅定义了项目的依赖关系,还规定了各种任务及其执行顺序。对于不同类型的项目(如Java、Android),这些配置文件能够确保编译、打包等一系列操作按照预设的方式顺利进行[^1]。 #### 二、主要的构建配置文件类型 - **`build.gradle`**: 此文件位于项目的根目录下或是各个模块内,包含了具体的构建逻辑与设置选项。可以在此处声明库依赖项、插件应用以及自定义的任务等。 - **`settings.gradle`**: 负责指定哪些子项目应当被纳入到整个多项目结构之中。这对于大型企业级应用程序尤其重要,因为它有助于管理复杂的工程架构。 - **`gradle.properties`**: 提供了一种机制来存储全局性的属性值,比如版本号或者是第三方服务API密钥之类的敏感数据。这使得同一套源码可以在多种环境下运行而无需修改内部代码。 #### 三、编写简单的`build.gradle`示例 下面展示了一个基础版的`build.gradle`文件内容: ```groovy plugins { id 'java' // 应用Java插件 } repositories { mavenCentral() // 添加Maven中央仓库作为依赖解析源 } dependencies { implementation 'org.apache.commons:commons-lang3:3.9' } ``` 这段脚本首先指定了要使用的插件,在这里选择了官方提供的Java支持;接着设置了远程资源库的位置以便下载所需的外部库;最后列出了当前项目所依赖的具体软件包名称及版本信息。 #### 四、创建并注册新任务 除了上述基本功能外,还可以利用Groovy或Kotlin DSL语法向`build.gradle`中添加新的命令行指令。例如,如果想要打印一条消息,则可以通过如下方式实现: ```groovy tasks.register('sayHello') { doLast { println 'Hello from Gradle!' } } ``` 此段代码会在执行名为`sayHello`的新任务时输出一句问候语句[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

a13069730106

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值