开发技巧之Android打包自动命名

Tips-Gradle 打包自动命名

一般的,我们构建运行App的时候,通常会在build/output文件夹下面生成一个app-debug.apk 或者app-release.apk,这样如果不做修改的拷贝到了其他地方或者发给别人,过后再看这个名称的apk文件,我们很难一眼就知道这是一个什么文件,是哪个版本的文件。

所以这里我们通过Gradle提供给我们的一些方法属性,我们可以自己定义文件输出的命名规则,这里给出一份简单的规则,大家可以根据自己的需要添加修改。

这里我们想要的命名规则比如是:微信_9.5.0_release.apk, 这样我们知道这个apk是微信的,版本号是9.5.0版本的,并且是release版本。可以一眼很清楚的知道,方便我们快速选择这个是否我们需要的版本。

那么我们就可以用下面得配置来自动为我们生成这样得文件名称。

android.applicationVariants.all { variant ->
    def appName="teachercenter-hd-dt"
    
	//添加git commit Id 信息,可以对应上 打包那条提交记录 更新日期:2020/07/07
    def cmd="git rev-parse --short HEAD"
    
    def commitId=cmd.execute().text.trim()  

    def versionName="${variant.versionName}"
    variant.outputs.all { output ->
        print(output)
        outputFileName = "${appName}_${versionName}_${variant.buildType.name}_${commitId}.apk"
    }
}

我们可以用一个单独的gradle文件保存起来,如outputconfig.gradle,然后再我们的App Module的build.gradle文件中引入就行了 也方便其他项目引用。是不是很方便呢。

apply from: 'outputconfig.gradle'

如果觉得上面的命名规则不是你想要的,你还可以自己定义自己喜欢的哦。只要是build.gradle 里面有的属性你都能获取到,还可以从gradle.properties文件中获取你定义的变量哦。

你可能感兴趣的:(开发技巧,android,Gradle)