【问题标题】:resConfigs per build type每个构建类型的 resConfigs
【发布时间】:2014-09-09 05:55:03
【问题描述】:

如何覆盖每个构建类型的 resConfigs?我读到口味会允许这样做,但我不使用它们。我只想为我的调试构建另一组受支持的语言。

这是我尝试过的:

buildTypes {
    debug {
        resConfigs "de", "en" // allow also german in debug builds
    }
    release {
        signingConfig signingConfigs.release
        resConfigs "en"       // english only releases
    }
}

有什么简单的方法可以实现吗?

【问题讨论】:

    标签: android gradle


    【解决方案1】:

    由于某种原因,单个 buildType 配置不支持您指出的 resConfigs 命令,但 defaultConfig 支持,然后您可以使用此技巧来操作每个构建类型,即使没有配置风格:

    android {
        defaultConfig {
            resConfigs "en"
        }
        applicationVariants.all { variant ->
            if (variant.buildType.name.equals("debug")) {
                variant.mergedFlavor.resourceConfigurations.add("de")
            }
        }
    }
    

    【讨论】:

      【解决方案2】:

      接受的答案对我不起作用。 de 未成功添加。不过,在 applicationVariants.all { ... } lambda 中执行所有操作都可以:

      android {
          defaultConfig {
              // No resConfigs here!
              // resConfigs "en"
          }
          applicationVariants.all { variant ->
              if (variant.buildType.name.equals("debug")) {
                  variant.mergedFlavor.resourceConfigurations.add("de")
              } else {
                  variant.mergedFlavor.resourceConfigurations.add("en", "de")
              }
          }
      }
      

      或在 Kotlinscript 中:

      android {
          defaultConfig {
              // no resConfigs here!
          }
          android.applicationVariants.all {
              val resConfigs = when {
                  name.equals("debug") -> listOf("en", "de")
                  else -> "en"
              }
              (mergedFlavor as DefaultProductFlavor).addResourceConfigurations(resConfigs)
          }
      }
      

      【讨论】:

        猜你喜欢
        • 2017-08-28
        • 2017-12-09
        • 2015-09-26
        • 1970-01-01
        • 2022-01-25
        • 2015-12-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多