android studio 3.1.4 自定义打包的apk名称

studio3.1.4的版本遇到的问题 之前我的代码是这样写的,报了两个问题如下:

 applicationVariants.all { variant ->
                variant.outputs.each { output ->
                    def outputFile = output.outputFile
                    if (outputFile != null && outputFile.name.endsWith('.apk')) {
                        // 输出apk名称为wandoujia_v1.0.0.1320_20150115.apk
                        def fileName = "${variant.productFlavors[0].name}_v${defaultConfig.versionName}.${defaultConfig.versionCode}_${releaseTime()}.apk"
                        output.outputFile = new File(outputFile.parent, fileName)
                    }
                }
            }

报了两个问题

1. Absolute path are not supported when setting an output file name

将”outputFile.parent” 修改为相对路径解决此问题
修改为 :outputFileName = new File(“../../../release/”, fileName)

2.Cannot set the value of read-only property ‘outputFile’ for ApkVariantOutputImpl_Decorated

将each 修改为all
output.outputFile 修改为outputFileName 此问题解决

修改之后完整代码
输出样式 : v1.0.1_20180910

相关代码:

在app的build.gradle中配置
android {
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            applicationVariants.all { variant ->
                variant.outputs.all { output ->
                    def outputFile = output.outputFile
                    if (outputFile != null && outputFile.name.endsWith('.apk')) {
                        //输出名称为 v1.0.1_20180910
                        def fileName = "v${defaultConfig.versionName}.${defaultConfig.versionCode}_${releaseTime()}.apk"
                        outputFileName = new File("../../../release/", fileName)
                    }
                }
            }
        }
        debug {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值