【发布时间】:2020-10-29 09:43:09
【问题描述】:
我在 build.gradle 中使用此代码:
android {
applicationVariants.all { variant ->
variant.packageApplicationProvider.configure { packageApplicationTask ->
doLast {
packageApplicationTask.apkNames.each { apkName ->
def apkDir = "./build/outputs/apk/${flavorName}/${buildType.name}"
def apkDestName = apkName.replace("app-", "stickerly-android-" + variant.versionName + "-").replace(".apk", "-" + getDate() + ".apk")
println "#####Rename ${variant.name} Apk File"
copy {
from("$apkDir/$apkName").into(apkDir).rename { String fileName -> apkDestName }
}
println "#####Copy mapping File"
def mappingDir = "./build/outputs/mapping/${flavorName}${buildType.name.capitalize()}"
copy {
from("$mappingDir/mapping.txt").into(mappingDir).rename {
"mapping-stickerly-${variant.versionName}.txt"
}
}
}
}
}
}
}
使用此代码,我重命名 apk 文件并复制映射文件。我在 android gradle 插件 4.0 中工作,但在 4.1 中无法使用此消息
地点:
脚本 '/Users/snow/workspace/stickerly-android/app/build-android-extra.gradle' 行:5
出了什么问题:
任务“:app:packageExternalArm8Debug”执行失败。 无法获取 com.android.build.gradle.tasks.PackageApplication 类型的任务 ':app:packageExternalArm8Debug' 的未知属性 'apkNames'。
我认为 API 已更改,但我找不到任何文档。有人可以帮助我吗? 谢谢。
【问题讨论】:
标签: android gradle android-gradle-plugin