Xcode Localization & Internationalization: Exporting for Localization (XLIFF) 不会导出 Info.plist 条目
Posted
技术标签:
【中文标题】Xcode Localization & Internationalization: Exporting for Localization (XLIFF) 不会导出 Info.plist 条目【英文标题】:Xcode Localization & Internationalization: Exporting for Localization (XLIFF) does not export Info.plist entries 【发布时间】:2016-07-12 02:23:55 【问题描述】:我有想要本地化的通用 Info.plist。我也有 InfoPlist.strings,其中有 InfoPlist.Strings (Spanish)
和 InfoPlist.Strings (Base)
。
我的问题是,当我转到Editor > Export for Localizations...
时,它生成的 XLIFF 文件没有任何我需要用西班牙语本地化的 Info.plist 条目(我的基本本地化是英语)。它也不会包含我手动添加的 InfoPlist.strings 的任何内容。
如果我手动将它们添加到XLIFF
,我添加的条目会在导入时被删除。如果我手动将它们添加到 InfoPlist.Strings(西班牙语)然后导出,我手动添加的条目会被清除。
我真的不知道如何本地化我的 plist 文件,因为无论我走到哪里,条目都会被删除。
我的es.lproj
和base.lproj
文件夹中有一个InfoPlist.strings。
我不得不说 only 没有被清除的条目在我的西班牙语文件中为CFBundleName
。
【问题讨论】:
这里有同样的问题。你能弄明白吗? @guido - 有点。请看下面我的回答。 :) 【参考方案1】:我能够让这个工作,但不是以如此明显的方式。
首先,我从 Xcode 中删除了 InfoPlist.strings
文件,然后完全关闭了 Xcode。
然后我打开我的项目文件夹并在我的每个 lproj
文件夹中手动创建了一个 InfoPlist.strings
文件。我将每一个都命名为相同的:InfoPlist.strings
。
即使我的字符串会落入基本的lproj
文件夹,我什至对英文lproj
文件夹也这样做了。
重新打开 Xcode。
即使这些仍然不能通过Editor
菜单中的Export for Localizations...
选项导出,我也必须在Xcode 中手动完成。导出/导入似乎并没有弄乱这些文件,幸运的是,Info.plist
文件没有太多需要翻译的地方。
【讨论】:
好的。谢谢马里奥。不幸的是,我也有一些自定义 plist。期待大量的复制粘贴:-) @guido 我很抱歉! :( 是的,我也必须进行一些复制和粘贴。我可以将英文 plist 留空,因为我使用 Base 作为翻译的最终后备。【参考方案2】:将 InfoPlist.strings 的本地化从 Base 更改为 English,然后导出和导入都可以正常工作。
【讨论】:
【参考方案3】:我在手动添加的 plist 键上遇到了同样的问题,只需在导出之前将该键添加到 Base 和 English 本地化版本中,就不会再删除自定义字符串了。 (在这里添加到英文本地化似乎是关键)
【讨论】:
以上是关于Xcode Localization & Internationalization: Exporting for Localization (XLIFF) 不会导出 Info.plist 条目的主要内容,如果未能解决你的问题,请参考以下文章
hdl_localization_nodelet.cpp问题记录
iOS小技能:本地化(Internationalization & Localization)
论文笔记之:Fully Convolutional Attention Localization Networks: Efficient Attention Localization for Fine
(Review cs231n) Spatial Localization and Detection(classification and localization)