首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >分级-实验resValue

分级-实验resValue
EN

Stack Overflow用户
提问于 2016-02-05 11:44:48
回答 3查看 2K关注 0票数 2

我想在Android中为每个版本设置我的appName。我使用com.android.tools.build:gradle-experimental:0.4.0插件,所以不能使用标准的gradle/groovy语法。

我在这里找到了一个解决方案:how to change android app name in the build gradle file

然而,通过我所有的实验,我无法为resValue字段找到正确的语法。

我试过这样的方法:

代码语言:javascript
复制
buildConfigFields.resValue = {
            create() {
                type = "String"
                name = "appName"
                value = "Game_Name"
            }
        }

但没有运气。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-02-07 18:26:24

你可以在你的应用程序/build.gradle上试试这个。

代码语言:javascript
复制
android {
 .....
 .....
 productFlavors {
  flavor1 {
   resValue "string", "app_name", "App-Name Flavor1"
  }
  flavor2 {
   resValue "string", "app_name", "App-Name Flavor2"
  }
 }
}

注意:将字符串app_namestrings.xml中删除。

编辑:

上述方法不适用于给定的0.4.0插件

正如@Gabriele Mariotti所建议的那样,您可以尝试在这种味道中覆盖app_name字符串的值。这是你怎么做的。

在各自的app_name文件中添加strings.xml字符串

代码语言:javascript
复制
src
-- main/res/values/strings.xml (default value)
-- flavour1/res/values/strings.xml
-- flavour2/res/values/strings.xml
票数 0
EN

Stack Overflow用户

发布于 2016-02-07 19:41:21

我认为最好的方法是重写风味文件夹中的字符串文件中的字符串。

因此,创建以下文件:

代码语言:javascript
复制
src/flavor1/res/values/strings.xml
src/flavor2/res/values/strings.xml

然后在这些文件中添加应用程序名称的值。

代码语言:javascript
复制
 <string name="app_name">XXXX</string>
票数 1
EN

Stack Overflow用户

发布于 2016-09-12 12:44:55

我让它和“分级-实验:0.8.0-Rc2‘”一起工作

代码语言:javascript
复制
model {
    android {
        defaultConfig {
        ...
            resValues.with {
                create() {
                    type = "string"
                    name = "myVar"
                    value = "myValue"
                }
            }
        }
    }
}

之后,我可以使用以下方法访问代码中的这个变量:

代码语言:javascript
复制
R.string.myVar

希望这能有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35223401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档