同一模拟器上的两个不同应用程序返回的不同语言环境

Posted

技术标签:

【中文标题】同一模拟器上的两个不同应用程序返回的不同语言环境【英文标题】:Different locales returned by two different apps on the same simulator 【发布时间】:2017-07-06 05:50:50 【问题描述】:

来自this problem (1) 我遇到了奇怪的行为。我有两个应用程序 A 和 B,我在同一个模拟器上运行。当我在 A 中调用以下代码 Bundle.main.preferredLocalizations.first 时,返回“de”,但在 B 中返回“de_DE”。我想知道如何解释...此外,来自 (1) 的相同代码在 A 中按预期工作,但在 B 中没有。我很困惑。

【问题讨论】:

【参考方案1】:

我认为这是因为语言回退。

“de”表示德语,例如奥地利,“de_DE”表示德国地区的德语。

也许其中一个应用有一些明确的德语和/或地区后备设置

希望这会有所帮助。

【讨论】:

好吧,你显然是对的。我在本地化中明确添加了 German(Germany),现在使用了 de-DE.lproj 中的 plist 文件。我还将模拟器中的区域从德国更改为美国,但保留了第一语言德语。然后加载来自 de.lproj 的 plist 文件。

以上是关于同一模拟器上的两个不同应用程序返回的不同语言环境的主要内容,如果未能解决你的问题,请参考以下文章

同一网站空间上的两个域,但通过 htaccess 和 GET 参数具有不同的内容/语言

C语言中函数和函数体的区别是啥?

如何在heroku上的两个不同应用程序之间共享worker?

#ifdef 在同一个头文件中返回不同的值

从同一个 git 存储库部署到具有不同环境变量的弹性 beanstalk 上的不同环境

Cupy add 在同一台机器上的不同环境中以不同的方式工作