我最近为来自南非的用户在我的Android应用程序中添加了一个en-rZA
、zu
和xh
字符串文件。
每个文件都包含一个翻译。
当我在模拟器上运行应用程序时,这个翻译似乎可以正常工作(我来自英国,因此我看到默认字符串(,但用户报告说,当在非模拟设备上使用应用程序时他们看到的是南非翻译。
在调试时,我注意到这是由en-rZA
字符串文件引起的,zu
和xh
字符串文件按预期进行转换(我更改了每个字符串文件中的值,并重新运行应用程序以确定问题的来源(。
我的设备区域设置在调试器中显示为en_UK,然后继续显示en-rZA
翻译。
我目前使用的一种解决方法是引入一个具有正确翻译的en_rGB
字符串文件,但我认为需要这样做是没有意义的。
是什么导致了这个错误的翻译,我是不是遗漏了什么?
感谢
根据https://stackoverflow.com/a/45512903/766024和https://issuetracker.google.com/issues/64429534?pli=1
解决方案是在values-en/strings.xml
或values-b+en+001/strings.xml
中复制values/strings.xml