Skip to content
Android i18n

Android Localization: Ship Your App in Every Language

Android provides a robust resource-based localization system using strings.xml files and resource qualifiers. Each locale gets its own values directory, and the system automatically selects the right resources based on the device language. With Jetpack Compose and per-app language preferences in Android 13+, building multilingual Android apps has never been more straightforward.

Android Localization Features

strings.xml resource files with type-safe R class references
Built-in pluralization rules with quantity strings (zero, one, two, few, many, other)
Jetpack Compose support with stringResource() and pluralStringResource()
Per-app language preferences for Android 13+ without restarting the app
Resource qualifiers for locale, screen size, and layout direction
Right-to-left (RTL) layout mirroring with automatic view flipping
Locale-aware date, time, and number formatting via ICU libraries
String arrays and typed arrays for localized list content
Android Studio Translations Editor for visual string management

Android Localization in Practice

Define translatable strings in res/values/strings.xml with plurals support, then use Kotlin and Jetpack Compose APIs to render locale-aware content in your UI.

<!-- 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))
}

Start Android Localization Today

Manage your Android strings.xml translations with AI-powered workflows, CLI sync, and CDN delivery under 50ms.