情景:
我正在开发一个iOS应用程序,它应该上传到世界各地的所有应用程序商店。
该应用程序应支持2种语言,德语和英语。德语为德语,为世界其他地区提供英语。
我做了什么:
当我开始开发应用程序时,我在Info.plist文件中选择德语作为“本地化本地开发区域”,并在项目设置中添加了英语本地化...
我使用NSLocalizedString并用德语写所有文本字符串。 然后我将Localization.string文件提交给客户进行翻译......
问题: 我是否正确地实现上述方案,当我想将应用程序提交到appstore时?
我在iTunesConnect中要做什么来存档这个场景......?
格尔茨..
答案 0 :(得分:2)
反过来,使用英语作为“本地化本地开发区域”,然后添加德语本地化。
kCFBundleDevelopmentRegionKey捆绑包的开发语言的名称。当CFBundle查找资源时,后备是查看名称由Info.plist文件中的kCFBundleDevelopmentRegionKey给出的lproj。因此,您必须确保包中包含具有包含每个本地化资源副本的确切名称的lproj,否则CFBundle无法保证回退机制将起作用。适用于iOS 2.0及更高版本。在CFBundle.h中声明。
答案 1 :(得分:1)
thvanarkel可能是正确的,但我实际上使用了另一种技巧:
当您在Localizable.strings中匹配您的对 - 键时,我将每个键命名为英文翻译,如
"Delete the current shopping list?" = "Delete the current shopping list?";
"Delete the current shopping list?" = "Löschen Sie die aktuelle Einkaufsliste?"
如果您的Localizable.string中的键匹配,它将被翻译,否则,将使用该键。
也许不是最好的做法,但它对我有用。