我有2个应用程序:Free&充分 我有2种语言:英语&德国
这导致4个不同的应用程序名称
我怎样才能做到这一点。
实际上我的所有目标都有#34; Free"其中,甚至是完整版。
我知道: 我有1个InfoPlist.strings文件,它与本地化相乘,我可以将它们分配给目标。因此,对于1 App,我可以本地化BundleDisplayName。
但是如何为第二个应用分配特定名称?
答案 0 :(得分:2)
PlistBuddy是你的朋友。您需要做的是在构建时更新您的plist。
答案 1 :(得分:1)
来自Apple Developer Technical Notes:
如果您的应用支持本地化,请务必通过将CFBundleDisplayName添加到所有语言特定的InfoPlist.strings文件来本地化。此外,请务必使用符合您应用的App Review指南的名称。
<强>先决条件强>
我假设你已经有多个目标。
我还假设您已经拥有InfoPlist.strings
个文件。如果你不这样做,代码&gt;文件&gt;文件...&gt;资源&gt;字符串文件&gt;下一个&gt;另存为: InfoPlist &gt; Base.lproj &gt;目标:英语目标&gt;创建
确保您已在Info.plist
:
<key>LSHasLocalizedDisplayName</key>
<true/>
一步一步
InfoPlist.strings
。InfoPlist.strings
到他们各自的位置。
en.lproj
,将其拖到 Project Navigator ,选择创建群组,添加到目标您的英语或基地目标,完成de.lproj
,fr.lproj
重复步骤6,每次从Finder中拖动整个.lproj
,并与相应的目标相关联。.lproj
可能包含您想要享受步骤3的魔力的其他本地化文件。只需删除其参考文献。最后的设置,比如德语,在文件检查器中将如下所示:
参考文献:
跨目标共享本地化:
这是实现本地化的一般方法。请参阅https://stackoverflow.com/a/33749062/218152。
针对特定目标的具体本地化:
这仅在您希望明确控制哪些语言进入哪个目标时才有用。请参阅https://stackoverflow.com/a/33791181/218152。