gpt4 book ai didi

android - 使用现有字符串定义定义 'resValue'

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

我更感兴趣的是在 strings.xml 文件而不是 build.gradle 中定义我的应用程序的多种风格。鉴于多种口味,我想要一个简化的发布/调试变体:

  buildTypes {
release {
signingConfig signingConfigs.release
resValue "string", "app_name", "@string/prod_name"
}
debug {
applicationIdSuffix ".beta"
resValue "string", "app_name", "@string/beta_name"
}

然后在我的每个构建风格的自定义 res/values/strings.xml 文件中,我将分别定义它们自己的“prod_name”和“beta_name”。我也想使用这个类似的框架来定义提供者的权限等......

这目前可以通过 gradle 命令行正常构建,但无法被 Android Studio 识别。

Android Studio 错误:

我在“generated.xml”中找到了这个

<!-- Values from build type: debug -->
<string name="app_name">@string/beta_name</string>

这是一个字符串引用另一个字符串的典型方式。但是这次 Android Studio 给我这个错误:

Error:(7, 29) No resource found that matches the given name 
(at 'app_name' with value '@string/beta_name').

我正在使用 Android Studio 2.1 预览版 5

最佳答案

这实际上是可能的。您所要做的就是在 defaultConfig 中将这些字符串声明为空,如下所示:

defaultConfig {
resValue "string", "prod_name", ""
resValue "string", "beta_name", ""
}

关于android - 使用现有字符串定义定义 'resValue',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36414602/

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