Android 字串資源

用於翻譯應用的Android特定檔案格式。

提示

非常相似的格式是 Compose Multiplatform 資源 和 Mobile Kotlin 資源。

Android 字串資源是單語格式;單語言基底語言檔案 儲存在與其他檔案不同的位置:res/values/strings.xml。

Weblate 會依照下列方式逸出字串:

  • 若字串是有效的 XML,會以 XML 形式插入翻譯。

  • 若 ? 或 @ 位於字串開頭,會使用 \\ 逸出,以免被解讀為樣式或資源參照。

  • 若字串包含多個空格,會以雙引號(")括住。

  • 換行會逸出為 \\n,同時保留實際換行以方便閱讀。

備註

目前不支援Android的 string-array 架構。為瞭解決這個問題,可以將字串陣列分開:

<string-array name="several_strings">
    <item>First string</item>
    <item>Second string</item>
</string-array>

變為:

<string-array name="several_strings">
    <item>@string/several_strings_0</item>
    <item>@string/several_strings_1</item>
</string-array>
<string name="several_strings_0">First string</string>
<string name="several_strings_1">Second string</string>

指向 string 元素的 string-array 應儲存在不同檔案中,並且不為翻譯所用。

這個指令碼可以幫助預處理現有的 strings.xml 檔案和翻譯:https://gist.github.com/paour/11291062

提示

為了避免翻譯某些字串,可以將它們標記為不可翻譯。這對於字串引用特別有用:

<string name="foobar" translatable="false">@string/foo</string>
支援的功能

副檔名

.xml

語言能力 ⓘ

單語言

支援複數 ⓘ

Yes

支援描述 ⓘ

Yes

支援解釋 ⓘ

No

支援情境 ⓘ

No

支援位置 ⓘ

No

支援旗標 ⓘ

Yes

API 辨識碼

aresource

支援唯讀字串 ⓘ

Yes

支援移除已不再使用的字串 ⓘ

No

檢查此格式新增的標記 ⓘ

Java 格式

Weblate 設定

典型的 Weblate 組件設定

檔案遮罩

res/values-*/strings.xml

單語言基底語言檔案

res/values/strings.xml

新翻譯的範本

空白

檔案格式

Android 字串資源