用于 App Store 显示的 CFBundleDevelopmentRegion (info.plist) 的字符串格式

Posted

技术标签:

【中文标题】用于 App Store 显示的 CFBundleDevelopmentRegion (info.plist) 的字符串格式【英文标题】:String format for CFBundleDevelopmentRegion (info.plist) for App Store display 【发布时间】:2013-12-04 23:40:01 【问题描述】:

我在一家为日本 ios 应用商店开发应用的公司工作。我们唯一支持的语言是日语。

我们在 iTunes Connect 中选择了日语作为“默认语言”,但是当我们的应用出现在 App Store 中时,它们会出现屏幕截图中显示的问题(语言列为英语)。

有人建议我在 info.plist 中设置 CFBundleDevelopmentRegion 可以解决这个问题,但是我在 Apple 的文档中找不到任何关于语言/区域字符串应该采用什么格式的说明。有许多标准,其中一些是 iOS 在不同地方(JP、JA、JPN、JAPAN、JAPANESE 等)随机支持的,我无法通过谷歌搜索找到权威答案。我们认为这可能是正确的

<key>CFBundleDevelopmentRegion</key>
<string>Japanese</string>

但如果有人能确认或提出更好的答案,我们将不胜感激,因为我们不想经历反复试验的过程,因为应用商店的批准需要一周的时间才能获得每次尝试的结果。

请注意:这不是本地化问题。我们不想支持其他语言。我们只想将基础语言设置为日语,以便应用在商店中正确显示。

【问题讨论】:

【参考方案1】:

我写这个问题是因为我几天前向 Apple 发送了技术支持请求,但还没有收到任何回复。幸运的是(典型的!)在发布到 SO 后不到一个小时,Apple 做出了回应,所以我想这是权威的答案(关于没有本地化文件夹的第二部分是我们想要的):

iTunes Store 中 Languages 字段的值是由 扫描应用程序包中的本地化文件夹。如果你 希望它仅在商店中显示“日语”,您需要确保 您的应用程序包中只有“ja.jproj”文件夹。如果你 甚至没有任何本地化文件夹,您可以选择 plist 文件 你在 Xcode 中的项目,并设置“本地化原生开发 从 Xcode 提供的候选列表中选择“日本” plist 编辑器,通过这样做 CFBundleDevelopmentRegion 键将是 设置为 "ja_JP" (language_local),您也可以遵循 ISO 639-1 或 639-2 使用“ja”或“jan”。

我会在时限到期后的 2 天内将此标记为已回答。

补充编辑:我怀疑苹果员工的意思是关于 ISO 639-2 的“jpn”,因为“jan”不是有效代码,但 jpn 是。

【讨论】:

您的意思是 ja.lproj 而不是 ja.jproj【参考方案2】:

我的母语有这个问题。

"CFBundleDevelopmentRegion (String - iOS, OS X) 指定bundle的本地区域。这个键包含一个字符串值,通常对应于编写bundle的人的本地语言。这个值指定的语言如果无法为用户的首选区域或语言找到资源,则将其用作默认语言。”

所以我想你必须有一个用于英语而不是日语的 localizable.strings 文件。

您必须选择localizable.strings并添加日语(jp)语言环境,并且您必须显示英语和日语语言,但如果您只想只显示日语,您必须只离开日语语言环境,但我不知道这是否事情是事实(只留下了与英语不同的语言)。

【讨论】:

以上是关于用于 App Store 显示的 CFBundleDevelopmentRegion (info.plist) 的字符串格式的主要内容,如果未能解决你的问题,请参考以下文章

为什么显示为白色的苹果App Store图标

firebase react-native 推送通知适用于 iOS 发布版本,但不适用于通过 App Store 发布的应用程序

找不到 CFBundle CertUIFramework.axbundle 的可执行文件

用于回复 App Store 评论的 API?

Mac App Store 的多语言应用程序 - 在哪里设置 Mac App Store 中显示的语言?

sh 简单的bash脚本用于从mac App Sierra创建可启动ISO从Mac App Store安装映像