我的应用程序中的 en-rZA 字符串文件正在为 en-UK 区域设置设置一个字符串

en-rZA strings file in my app is setting a string for the en-UK locale

我最近为来自南非的用户在我的 Android 应用程序中添加了 en-rZAzuxh 字符串文件。

这些文件中的每一个都包含一个 t运行slation。

当我在模拟器上 运行 我的应用程序时,这个 t运行slation 似乎按预期工作(我来自英国,因此我看到默认字符串)但用户报告说,当使用在非仿真设备上的应用程序,他们看到的是南非 t运行slation.

调试时,我注意到这是由 en-rZA 字符串文件引起的,而 zuxh 字符串文件 t运行slate as and when预期(我更改了每个值并重新 运行 应用程序以确定问题的来源)。

我的设备区域设置在调试器中显示为 en_UK,然后继续显示 en-rZA t运行slation。

我目前使用的解决方法是引入一个具有正确 t运行slation 的 en_rGB 字符串文件,但对我来说我不需要这样做没有意义。

是什么导致了这个错误运行slation,我是不是漏掉了什么?

谢谢

根据 and https://issuetracker.google.com/issues/64429534?pli=1

,这是以 Android N 开头的预期(尽管令人惊讶)行为

解决方案是在values-en/strings.xmlvalues-b+en+001/strings.xml

中复制values/strings.xml