gpt4 book ai didi

android - Gradle:applicationVariants.all 跳过一个变体

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:53:43 25 4
gpt4 key购买 nike

我正在使用 Gradle 编译我的 Android 项目:

buildTypes {
release {
signingConfig signingConfigs.release
applicationVariants.all { variant ->
def file = variant.outputFile
def fileName = file.name
fileName = fileName.replace(".apk", "-renamed.apk")
variant.outputFile = new File(file.parent, fileName)
}
}
}

并非所有输出文件都被重命名,它总是跳过 1 个文件。为什么?

myapp-debug-unaligned-renamed.apk    <-renamed, OK!
myapp-release.apk <-NOT renamed, WRONG!
myapp-release-unaligned-renamed.apk <-renamed, OK!

最佳答案

我用这段代码解决了:

buildTypes {
release {
signingConfig signingConfigs.release
}

applicationVariants.all { variant ->
def apk = variant.packageApplication.outputFile;
def newName = apk.name.replace(".apk", "-renamed.apk");
variant.packageApplication.outputFile = new File(apk.parentFile, newName);
if (variant.zipAlign) {
variant.zipAlign.outputFile = new File(apk.parentFile, newName.replace("-unaligned", ""));
}
}
}

block applicationVariants.all {...} 现在位于 release {...} block 之外。

我认为 variant.zipAlign.outputFile 有所不同。

关于android - Gradle:applicationVariants.all 跳过一个变体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18534313/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com