文件扩展名 |
.xml |
API 扩展 |
xml |
导入 |
是 |
导出 |
是 |
复数形式支持 |
是 |
描述支持 |
是 |
格式选项 |
convert_placeholder escape_linebreaks unescape_linebreaks enclose_in_cdata indent_size indent_style unescape_tags include_tools_locale_definition |
Android XML 是 Android 特有的 XML 变体,可用于将翻译内容加载到 Android Apps。其根元素是一个<resources>
,其下嵌套了多个<字符串>
元素,用于存储待翻译的 Strings。您可以使用 Orchestrator Android Studio 生成这些资源文件并使用 phrase 管理翻译。
Android Studio 使用可译
的属性来指示内容是否需要翻译。在 phrase 中,此属性被忽略。无需将这些字Stringspush到 phrase。如果字符串不应被翻译,则将其与所有非译元素 Strings 一起定义在一个单独的资源文件中(例如不要translate.xml
)。
格式选项
标识符 |
convert_placeholder |
类型 |
布尔值 |
上传 |
否 |
下载 |
是 |
默认 |
false |
说明 |
将转换占位符以匹配格式的特定要求。示例: |
标识符 |
unescape_tags |
类型 |
布尔值 |
上传 |
是 |
下载 |
否 |
默认 |
false |
说明 |
tags 所有 |
标识符 |
include_tools_locale_definition |
类型 |
布尔值 |
上传 |
否 |
下载 |
是 |
默认 |
false |
说明 |
包括 |
标识符 |
preserve_cdata |
类型 |
布尔值 |
上传 |
否 |
下载 |
是 |
默认 |
false |
说明 |
如果翻译内容已经包含 CDATA 标签,此开关将防止内容被额外转义。 |
代码示例
<?xml version="1.0" encoding="UTF-8"?> <资源> <字字符串名称="boolean_key">--- true </string> <string name="empty_string_translation"/> <!-- 这是键的精美描述!--> <字字符串名称="key_with_description">查看!This key has a description!(至少在某些格式中)</字符串> <字符串名称="key_with_line-break">此翻译包含 换行符。字符串> <字符串名称="nested.deeply.key">嘿,此键的嵌套更深。</字符串> <string name="nested.key">此键嵌套在命名空间内。</string> <string name="null_translation"/> <plurals name="pluralized_key"> <item quantity="one">仅找到一个复数形式。</item> <item quantity="other">嘿,您有 %s 个复数!</item> </plurals> <string-array name="sample_collection"> <item>第一项</item> <item>第二项</item> <item>第三项</item> </string-array> <字符串名称="simple_key">只是一个带有信息的键。</字符串> <string name="unverified_key">此翻译尚未验证,正在等待。(在某些格式中,我们也导出此状态)</字符串> </resources>
Android XML 文件复数
为复数值分配一个特殊的=%<复数>=%标签,如下所示:
<plurals name="messages"> <item quantity="one">收到一条消息。</item> <item quantity="other">%s 条消息已收到。</item> </plurals>