Android 문자열 리소스

애플리케이션 번역을 위한 Android 전용 파일 형식.

힌트

매우 유사한 형식으로 Compose Multiplatform 리소스 및 모바일 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

Supports removing obsolete strings ⓘ

No

이 형식이 추가하는 검사 플래그 ⓘ

Java 형식

Weblate 구성

일반적인 Weblate 구성요소 설정

파일 마스크

res/values-*/strings.xml

단일언어 기반 언어 파일

res/values/strings.xml

신규 번역의 템플릿

빈

파일 형식

Android String Resource