将Android Studio和Gradle更新到3.0版后,我无法使用3种风格构建我的应用程序(dbg,production和nostore production)
在每个flavor源集(不包括main)的java / src文件夹中,我有类 Flavors.class ,并为此源集指定了一些方法。
但是当我尝试运行或构建应用程序时,我有错误:
post_save
。
此外,我还添加了gradle变量维Error:(9, 8) error: duplicate class: my.app.namespace.Flavors
并为每个风味部分添加flavorDimensions "dbg", "prod","nostore"
值
这就是它的外观:
dimension
我不明白什么是错的,这段代码看起来像https://developer.android.com/studio/build/build-variants.html上的样本 现在,在Build Varians面板上,我只有2个varians:dbgProductionNostoreprodDebug和dbgProductionNostoreprodRelease但是在AS和Gradle的先前版本中,我对此面板上的每种风格都有不同的变体。 (看起来像AStudio尝试在同一时间或所有变体中进行单一构建?)
答案 0 :(得分:12)
您粘贴的配置将正确生成2个变体,因为3个维度中的每个只有1个味道,然后有2个隐式构建类型(发布和调试):
+-----------------+-----------+--------------------+
| myDimensionName | buildType | resulting variant |
+-----------------+-----------+--------------------+
| dbg | debug | dbgDebug |
| dbg | release | dbgRelease |
| production | debug | prodDebug |
| production | release | prodRelease |
| nostoreprod | debug | nostoreprodDebug |
| nostoreprod | release | nostoreprodRelease |
+-----------------+-----------+--------------------+
您可能想要的是1种风味维度,而不是3种口味:
...
flavorDimensions "myDimensionName"
productFlavors {
dbg{
ndk {
abiFilters "armeabi", "x86"
}
dimension "myDimensionName"
}
production{
ndk {
abiFilters "armeabi", "x86"
}
dimension "myDimensionName"
}
nostoreprod {
ndk {
abiFilters "armeabi", "x86"
}
dimension "myDimensionName"
}
这可能是这样的:
write.csv(YOUR_VARIABLE, file = "NAME_OF_YOUR_FILE.csv")