Android Studio升级到3.4.1的同时,Gradle也升了级,Android Gradle Plugin Version为3.4.1,Gradle Version为5.1.1,同时也有很多地方需要更新。
1、依赖指令也有了变更,之前的compile变为了implement和api。
api指令:完全等同于compile指令,没区
implementation指令:该指令的依赖隐藏在内部,不对外公开。
2、Gradle自定义apk名称报错
错误代码:ERROR: Cannot set the value of read-only property 'outputFile' for ApkVariantOutputImpl_Decorated of type com.android.build.gradle.internal.api.ApkVariantOutputImpl.
Android Studio 2.3.1
applicationVariants.all { variant ->
variant.outputs.each { output ->
def fileName = "${variant.versionName}_release.apk"
def outFile = output.outputFile
if (outFile != null && outFile.name.endsWith('.apk')) {
output.outputFile =newFile(outFile.parent, fileName)
}
}
Android Studio 3.4.1
//打包时重命名包名
android.applicationVariants.all { variant ->
variant.outputs.all { output ->
def fileName = "KO_Patient_" + buildType.name + "_v" + defaultConfig.versionCode + "." + defaultConfig.versionName + "_.apk"
def outFile = output.outputFile
if (outFile != null && outFile.name.endsWith('.apk')) {
outputFileName = fileName
}
}
}