Xcode 9.2崩溃导出或导入xliff

时间:2018-02-06 22:08:54

标签: ios xcode localization xliff

我可以看到这是各种Xcode版本的反复出现的问题。我正在使用最新的非beta版本(9.2 9C40b)。

我已经用西班牙语进行了本地化。这样做涉及成功导出和导入xliff文件,使用相同的Xcode。那改变了什么?

我现在正尝试本地化为另一种语言。这是一个表现。任何提示?我查看了所有关于以前版本崩溃的帖子,但没有发现任何有效的内容。

(在你提到它之前,我已经完成了genstrings。如果它已经存在了。)

4 个答案:

答案 0 :(得分:3)

我发现大的 .xliff 文件(大约6,500行或1,200 <trans-unit>个元素)会导致Xcode 10.1在导入操作即将结束时始终崩溃。 >

解决方法是将 .xliff 文件手动拆分为两个不同的 .xliff 文件,每个文件中包含<file>元素的子集。原始文件。然后,您可以将生成的两个 .xliff 文件分别导入Xcode,而不会崩溃。

答案 1 :(得分:1)

请勿翻译“捆绑包名称”

我想翻译成希腊语,并且每次导入xliff文件时,Xcode都崩溃了。

我意识到问题出在,我也在翻译“包名”。

如果您犯了同样的错误,请打开xliff文件,找到:

<trans-unit id="CFBundleName">
<source>NameOfYourApp</source>

并删除该行

<target>...</target>

之后,一切对我来说都很完美!

答案 2 :(得分:0)

这是一种解决方法。在Project Navigator中选择项目图标。选择顶部的信息(而不是构建设置)。在“本地化”下,单击“+”按钮并添加新语言。

Xcode将创建新的.strings文件,并用预先存在的翻译填充它们。 (如果有的话。)奇怪的是,对我来说,一些新的.strings文件用英语填写,有些用西班牙语填写。

在任何情况下,您都有新的.strings文件,并且可以手动粘贴新语言的翻译。如果您的应用没有太多面向用户的文字,这并不繁琐。

但实际上,这个问题可以追溯到Xcode 4(!),人们会认为它现在已经解决了。

答案 3 :(得分:0)

我知道这是一个较晚的答案,我已经在使用Xcode版本10.1(10B61)。

在我的方案中,我在“项目”>“信息”>“本地化”下添加了中文香港(zh-HK)语言,并成功导出,然后发送给该机构进行翻译。几天后,他们将中文翻译的文字发送给我。那时,从我看来,一切对我来说都是正确的。但是我尝试了10次导入文件,并且崩溃了10次,无一例外!这让我恶心。我曾经通过Apple的File Merge App来查看2个文档之间的区别。我了解代理机构的天才增加了一些缺少的<\ target>标签。嗯,这意味着在导出Xcode时,某些翻译<\ target>标签没有添加。有趣的...

我删除了那些不必要的翻译标签,并检查了2个文档中所有单词是否相等,除了单词翻译成中文。

试图再次导入。然后BOOM!它就像一个魅力!我对此感到惊讶。太奇怪了,Xcode从来没有向我显示有关我的错误的描述性消息。可能,这只是Xcode的解析错误。

无论如何,我希望这对其他人有用。

最好。