gpt4 book ai didi

android - 如何在 Gradle 输出迭代器中获取 ABI 名称

转载 作者:太空狗 更新时间:2023-10-29 16:12:57 27 4
gpt4 key购买 nike

我正在使用当前应用程序版本和风格名称编写 .apk 文件名。我也想添加当前的 ABI 拆分名称,但前提是它是通用 apk。

我的相关 build.gradle 部分:

buildTypes {
release {
applicationVariants.all { variant ->
variant.outputs.each { output ->
def flavor = .... // some code to parse flavor & determine an appropriate string from it
output.outputFile = new File(output.outputFile.parent, "app_" + flavor + "_0" + variant.versionCode + ".apk")
}
}
}
}
productFlavors {
deploy {
splits {
abi {
enable true
reset()
include 'armeabi-v7a' //select ABIs to build APKs for
universalApk true //generate an additional APK that contains all the ABIs
}
}
}
}

目前此配置生成两个.apks,但它们的文件名相同,因为我不知道如何获取ABI名称,所以后生成的会覆盖之前生成的。

那么,当前 ABI 拆分的等效 variant.productFlavors.get(0) 是什么?

最佳答案

这很奇怪,因为 flavor 和 ABI-name 会自动添加到构建名称中(如果你进行相应的组装)

你能不能尝试完全删除你自定义的命名

 applicationVariants.all { variant ->
variant.outputs.each { output ->
def flavor = .... // some code to parse flavor & determine an appropriate string from it
output.outputFile = new File(output.outputFile.parent, "app_" + flavor + "_0" + variant.versionCode + ".apk")
}
}

而不是尝试将这一行添加到 defaultConfig

 archivesBaseName = "app_${versionCode}"

如果这不能解决您的问题,您可以尝试从输出中获取 abi

output.getFilter(com.android.build.OutputFile.ABI)

关于android - 如何在 Gradle 输出迭代器中获取 ABI 名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39291643/

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