美文网首页
Android 使用Gradle打包APP名称以及版本号

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

作者: 边走边看反正人山人海 | 来源:发表于2018-08-08 10:26 被阅读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)

    }

    }

    }

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

    相关文章

      网友评论

          本文标题:Android 使用Gradle打包APP名称以及版本号

          本文链接:https://www.haomeiwen.com/subject/wortbftx.html