Android 使用Gradle打包APP名称以及版本号

2018-08-08  本文已影响0人  边走边看反正人山人海

        由于app版本迭代较频繁,回归版本测试的时候就比较麻烦,得登录进app内的关于版本才能看到,小编比较喜欢简洁明了,于是就在脚本里做了一系列操作,直接在页面读取脚本切换环境,直接通过脚本获取版本名称和版本号,简直是越研究越感兴趣,像小编这么懒的人都记住了呢,今天就讲讲如何通过gradle获取版本名称和版本号吧 

ext {

   compileSdkVersion =25

   buildToolsVersion ='25.0.2'

    supportLibraryVersion ='25.3.1'

    minSdkVersion =19

    targetSdkVersion =23

    butterknife ='8.4.0'

  //声明版本号与名称

    versionCode =11

    versionName ='1.1.0'

  //要声明测试环境还是生产环境

    ceshi_app_label ="测试"

    release_app_label ="生产"

}

// 保证其他的lib没有被preDex // 不加上这一句,会打出很多的大小较小dex;加这一个只会打出4、5个大小较大dex

Options {

javaMaxHeapSize "4g"

preDexLibraries = true

}

//修改生成的最终Apk名称

applicationVariants.all {variant ->

    variant.outputs.each { output ->

def outputFile = output.outputFile

if (outputFile?.name?.endsWith('.apk')) {

def outputDirectory = file('../target')    /*new File(outputFile.parent)*/;

//如果改变apk包的输出路径,则outputFile.parent替换掉就可以了

def fileName = "app"

if (variant.buildType.name == "release") {

fileName="aibank_v${defaultConfig.versionName}_${packageTime()}_${variant.productFlavors[0].name}.apk"

} else if (variant.buildType.name == "debug") {

fileName="aibank_v${defaultConfig.versionName}_${packageTime()}_${variant.productFlavors[0].name}.apk"

}

output.outputFile = new File(outputDirectory, fileName)

}

}

}

大家可以举一反三,有什么不懂的可以留言哦

上一篇下一篇

猜你喜欢

热点阅读