有人在迭代每个变体时使用 resValue 来设置值吗? 无法让这样的事情发挥作用
applicationVariants.all { variant ->
//none of these work
variant.mergedFLavor.setResValue("integer","key","value")
variant.mergedFlavor.resValue "integer", "key", "value"
}
我有以下变体结构:
buildTypes{
debug {...}
stage {...}
release{...}
}
productFlavors {
flavorDimensions "country", "store"
uk {
flavorDimension "country"
}
us {
flavorDimension "country"
}
amazon {
flavorDimension "store"
}
google {
flavorDimension "store"
}
}
我正在寻找为构建类型为发布的每个[国家/地区]设置一个tracking_id。并为每个[国家]+[商店]组合设置唯一的代码。 我知道国家/商店代码可以使用以下目录中的资源文件来完成:
src/ukAmazon/res
src/ukGoogle/res
src/usAmazon/res
src/usGoogle/res
目录中的跟踪 ID:
src/ukAmazonRelease/res
src/ukGoogleRelease/res
src/usAmazonRelease/res
src/usGoogleRelease/res
但是最好将所有内容都保留在脚本中并避免重复 res 文件。当更多国家加入时,情况会变得更加困惑。
最佳答案
对于仍然感到困惑的人,只需将脚本修改为如下所示即可:
applicationVariants.all { variant ->
variant.resValue "integer", "key", "value"
}
关于android-gradle-plugin - 使用 applicationVariants.all 中的 resValue,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24802532/