用任何语言覆盖字符串资源

时间:2017-09-06 07:02:31

标签: android gradle

是否可以用任何语言覆盖字符串资源?

通过一些gradle任务/脚本/其他"技巧"?我有一个库,用很多语言定义一个字符串,我想用我的自定义替换它,但我不能提供所有语言,所以我想用默认的英语覆盖所有值。

这可能吗?

修改

图书馆定义了以下内容:

<string name="name">Default name<string> // in values/strings.xml
<string name="name">German name<string> // in values-de/strings.xml
<string name="name">Spanish name<string> // in values-es/strings.xml
// many, many more...

我想立即替换所有名称,我希望它们都是&#34;默认名称&#34;,我不想在此示例中定义3种语言,因为在我的情况下,我将不得不定义约60种语言。在同步后,我可能需要定义新语言,可能会忘记它们......

我尝试了什么

在我的情况下,我可以定义一个简单的字符串替换规则,所以我尝试了以下,但没有任何影响:

gradle.projectsEvaluated {
    task filter(type: Copy) {
        filter { String line -> line.replaceAll("<string name=\"name\">.*<string>", "<string name=\"name\">Default name</string>") }
    }
}

0 个答案:

没有答案