没有英文的 iPhone 本地化

Posted

技术标签:

【中文标题】没有英文的 iPhone 本地化【英文标题】:iPhone Localization without English 【发布时间】:2010-09-07 12:54:13 【问题描述】:

我有一个仅支持荷兰语和法语的应用。此应用程序不支持英语。 如果我想使用可本地化的字符串,默认值总是设置为英语。我希望这是荷兰语。 所以我所做的是使用英语本地化字符串文件并用荷兰语单词填充它。我唯一的问题是它在 App Store 中将英语显示为受支持的语言。有什么方法可以将默认的 Localizable Strings 文件更改为荷兰语,以便显示的仅有的两种语言是荷兰语和法语?

提前致谢,

莱昂

【问题讨论】:

【参考方案1】:

您应该将存放荷兰语文件的文件夹从 en.lproj 重命名为 nl.lproj。一切都应该仍然有效,但语言将被正确识别。你可能需要告诉 Xcode 文件的新位置。

【讨论】:

不起作用。如果我重命名该文件夹并告诉 Xcode 它的位置,他将名称添加为 Localizable.strings 而不是 nl(或荷兰语),并且它默认为法语,因为它无法再以某种方式读取荷兰语字符串文件...... 您必须将他分别指向每个文件。或者:将荷兰语作为语言添加到所有文件,然后用英语替换它们并在 xcode 中删除英语【参考方案2】:
 [[NSUserDefaults standardUserDefaults] 
      setObject:[NSDictionary 
                  dictionaryWithObject:[NSArray arrayWithObjects:@"nl", nil]
                  forKey:@"AppleLanguages"]];

这将使荷兰语成为默认语言。

【讨论】:

但是英语仍然会在 iTunes Connect 中显示为受支持的语言。它并不能解决本地化文件的问题。【参考方案3】:

通过标准方式创建荷兰语和法语,并在构建后从应用程序中删除 English.lproj,例如作为构建阶段,如 here(第 2 段)所述。

【讨论】:

以上是关于没有英文的 iPhone 本地化的主要内容,如果未能解决你的问题,请参考以下文章

使用 sqlite 进行 iPhone 本地化?

iphone, 本地化, info.plist

iPhone -iAd、Admob 和本地广告

iPhone iOS 8 中图标和启动屏幕的本地化

Iphone 多个本地通知

如何检查 iPhone 的语言设置?