有时我会在" strings.xml"上看到一些奇怪的属性。例如,在chips example(可用代码here)上由Google的示例制作的文件,我可以找到" res / values-en-rGB&#34的这个字符串文件; (英英):
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="more_string" msgid="8495478259330621990">"+<xliff:g id="COUNT">%1$s</xliff:g>"</string>
<string name="copy_email" msgid="7869435992461603532">"Copy email address"</string>
<string name="copy_number" msgid="530057841276106843">"Copy phone number"</string>
<string name="done" msgid="2356320650733788862">"Return"</string>
</resources>
我认为两者都只用于本地化的字符串,因为我从未在内部看到过#34; res / values&#34;文件夹中。
这些属性意味着什么?
&#34; xliff&#34;的价值是什么?意思?
你什么时候应该使用它们,你应该把它放在那里?
他们甚至需要吗?
有关于这些事情的文件吗?
答案 0 :(得分:2)
在Android开发者Localise your app页面上,在名为&#34的部分中搜索xliff
;标记不应翻译的消息部分&#34;。
解释如下:
字符串通常包含不应翻译的文本 其他语言。常见的例子可能是一段代码,a 占位符表示值,特殊符号或名称。在你准备的时候 你的字符串用于翻译,查找和标记应该的文本 保持原样,没有翻译,所以译者没有 改变它。
要标记不应翻译的文字,请使用 占位符标记。
建议不要翻译<xliff:g></xliff:g>
标记内的文字。这些标签还可以提供有关非翻译文本的元数据。
声明占位符标记时,请始终添加id属性 解释了占位符的用途。如果你的应用程序稍后取代了 占位符值,请务必提供示例属性以澄清 预期用途。
有关实际xliff工具的更多信息,而不是它与Android字符串的关系,请查看相关问题: