Android 在gradle生成时替换字符串资源内容

Android 在gradle生成时替换字符串资源内容,android,xml,string,android-gradle-plugin,build.gradle,Android,Xml,String,Android Gradle Plugin,Build.gradle,我有一个有两种口味的应用程序。每种风格都支持多种语言。 我有包含味道名称的字符串。例如: <string name="test_string">Flavor 1 is an app to do something</string> flavor1是一个做一些事情的应用程序 我可以做到: <string name="test_string_flavor1">Flavor 1 is an app to do something</string> &

我有一个有两种口味的应用程序。每种风格都支持多种语言。 我有包含味道名称的字符串。例如:

<string name="test_string">Flavor 1 is an app to do something</string>
flavor1是一个做一些事情的应用程序
我可以做到:

<string name="test_string_flavor1">Flavor 1 is an app to do something</string>
<string name="test_string_flavor2">Flavor 2 is an app to do something</string>
flavor1是一个做一些事情的应用程序
Flavor2是一个做一些事情的应用程序
(同一种语言的所有字符串都必须位于同一个字符串文件中,因为我用来管理翻译的工具无法处理口味。)

然后,我可以创建两个单独的字符串文件,每种味道一个:

flavor 1的文件

<string name="test_string">@string/test_string_flavor1</string>
@string/test\u string\u 1
flavor 2的文件

<string name="test_string">@string/test_string_flavor2</string>
@string/test\u string\u 2
然后在应用程序中使用test_字符串

但我不能这样做,因为管理翻译将是一场噩梦(只有味道的名称改变,字符串的其余部分需要相同),而且维护起来太困难

所以我在寻找另一种解决方案。 我在想,也许我可以在gradle构建它们时替换字符串资源中的味道名称,但是:

  • 我不确定这是否可能
  • 也许有一个更简单的选择

  • 为什么会这样呢?因为我看不到任何其他的解决办法。