【发布时间】:2023-04-03 18:30:01
【问题描述】:
我在 Mac App Store 的 OSX 项目中添加了几个本地化,提交了应用程序,但只能识别英语(本地化:(“英语”),取自 ITC 二进制详细信息)。该产品已在 iTunes 上发布,其中英语也是唯一显示的语言。
使用自定义系统处理本地化字符串,因此我们不需要像 English.lproj 这样的额外文件夹。为了本地化应用程序,我刚刚在项目的 Info.plist 中添加了所有语言标识符,在关键 CFBundleLocalizations 下,正如 Apple 在 https://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPInternational/Articles/ChoosingLocalizations.html 建议的那样
应用程序可以通过其信息属性列表 (Info.plist) 文件通知系统它支持其他本地化。要指定未包含在包的 .lproj 目录中的本地化,请将 CFBundleLocalizations 键添加到此文件。键的值是一个字符串数组,每个字符串都包含一个 ISO 语言指示符,如“语言和区域设置指定”中所述。
plist 文件中指定本地化的部分是:
<key>CFBundleLocalizations</key>
<array>
<string>en</string>
<string>de</string>
<string>fr</string>
<string>it</string>
<string>es</string>
<string>pt</string>
<string>nl</string>
<string>se</string>
</array>
我过去曾在 2 个 iOS 应用程序上使用过完全相同的方法,并且它们都运行良好。我不明白为什么这次我们会得到不同的行为。有什么想法吗?
谢谢。
【问题讨论】:
标签: xcode macos localization