Přejít na obsah
Android i18n

Lokalizace pro Android: Vydávejte svou aplikaci ve všech jazycích

Systém Android nabízí robustní systém lokalizace založený na zdrojových souborech, který využívá soubory strings.xml a kvalifikátory zdrojů. Každé jazykové prostředí má svůj vlastní adresář s hodnotami a systém automaticky vybírá správné zdroje na základě jazyka zařízení. Díky Jetpack Compose a nastavení jazyka pro jednotlivé aplikace v systému Android 13 a novějších verzích je tvorba vícejazyčných aplikací pro Android snadnější než kdykoli předtím.

Funkce lokalizace pro Android

soubory zdrojů strings.xml s typově bezpečnými odkazy na třídu R
Integrovaná pravidla pro tvorbu množného čísla s řetězci označujícími množství (nula, jeden, dva, několik, mnoho, jiné)
Podpora Jetpack Compose pomocí funkcí stringResource() a pluralStringResource()
Jazykové předvolby pro jednotlivé aplikace v Android 13+ bez nutnosti restartovat aplikaci
Kvalifikátory zdrojů pro národní prostředí, velikost obrazovky a směr rozložení
Zrcadlení rozvržení zprava doleva (RTL) s automatickým překlápěním zobrazení
Formátování data, času a čísel s ohledem na místní nastavení pomocí knihoven ICU
Řetězcová pole a typizovaná pole pro lokalizovaný obsah seznamů
Editor překladů Android Studio pro vizuální správu řetězců

Lokalizace pro Android v praxi

Definujte přeložitelné řetězce v res/values/strings.xml s podporou plurálů a poté použijte Kotlin a Jetpack Compose API k zobrazení obsahu přizpůsobeného národnímu prostředí ve vašem uživatelském rozhraní.

<!-- res/values/strings.xml -->
<resources>
    <string name="welcome">Welcome to %1$s</string>
    <plurals name="items">
        <item quantity="one">%d item</item>
        <item quantity="other">%d items</item>
    </plurals>
</resources>

<!-- res/values-fr/strings.xml -->
<resources>
    <string name="welcome">Bienvenue sur %1$s</string>
    <plurals name="items">
        <item quantity="one">%d article</item>
        <item quantity="other">%d articles</item>
    </plurals>
</resources>

// Kotlin - Jetpack Compose
@Composable
fun WelcomeScreen() {
    Text(text = stringResource(R.string.welcome, "My App"))
    Text(text = pluralStringResource(R.plurals.items, 5, 5))
}

Začněte s lokalizací pro Android ještě dnes

Spravujte překlady souborů strings.xml pro Android pomocí pracovních postupů založených na umělé inteligenci, synchronizace přes příkazový řádek a doručování přes CDN s latencí pod 50 ms.