Häufig legen mehrsprachige Nutzer für ihre Systemsprache eine Sprache fest, z. B. Englisch, möchten bestimmte Apps aber in anderen Sprachen nutzen, z. B. auf Niederländisch, Chinesisch oder Hindi. Damit Apps von diesen Nutzern optimal verwendet werden können, gibt es in Android 13 jetzt folgende Funktionen für Apps, die mehrere Sprachen unterstützen:
Systemeinstellungen: An einem zentralen Ort können Nutzer eine bevorzugte Sprache für jede App festlegen.
Sie können Ihre App so konfigurieren, dass die Dateien, die für die Unterstützung der Einstellung der bevorzugten Sprache pro App erforderlich sind, automatisch generiert werden und die App in den Systemeinstellungen angezeigt wird. Weitere Informationen finden Sie in der Anleitung zum Aktivieren der automatischen Unterstützung von appspezifischen Sprachen.
Zusätzliche APIs: Mit diesen öffentlichen APIs, z. B. den Methoden
setApplicationLocalesundgetApplicationLocalesinLocaleManager, können Apps in einer anderen Sprache als der System sprache ausgeführt werden.Diese APIs werden automatisch mit den Systemeinstellungen synchronisiert. So können Apps, die diese APIs zum Erstellen benutzerdefinierter Sprachauswahlen in der App verwenden, ihren Nutzern eine einheitliche Nutzererfahrung bieten, unabhängig davon, wo sie ihre Spracheinstellungen auswählen. Die öffentlichen APIs helfen Ihnen auch, die Menge an Boilerplate-Code zu reduzieren. Sie unterstützen unterteilte APKs und die automatische Sicherung fürApps, um die Spracheinstellungen der Nutzer auf App-Ebene zu speichern.
Aus Gründen der Abwärtskompatibilität mit früheren Android-Versionen sind entsprechende APIs auch in AndroidX verfügbar. Die abwärtskompatiblen APIs funktionieren jedoch mit dem AppCompatActivity-Kontext und nicht mit dem Anwendungskontext für Android 12 (API-Level 32) und früher. Sie können mit Appcompat 1.6.0 oder höher auf die abwärtskompatiblen APIs zugreifen.
Übersicht über die Implementierung dieser Funktion
Die folgende Tabelle enthält empfohlene Implementierungen für verschiedene Anwendungsfälle.
| Anwendungsfall | Empfohlene Implementierung |
|---|---|
| Ihre App hat keine Sprachauswahl in der App |
|
| Ihre App hat bereits eine Sprachauswahl in der App |
|
Systemeinstellungen für Nutzer
Ab Android 13 gibt es in den Systemeinstellungen einen zentralen Ort, an dem Nutzer die Einstellung der bevorzugten Sprache pro App festlegen können. Damit die Sprachen Ihrer App auf Geräten mit Android 13 oder höher in den Systemeinstellungen konfiguriert werden können, aktivieren Sie die automatische Unterstützung von appspezifischen Sprachen (empfohlen) oder konfigurieren Sie die Unterstützung manuell.
Automatische Unterstützung von appspezifischen Sprachen aktivieren
Dies ist die empfohlene Methode, um Ihren Apps die Unterstützung von appspezifischen Sprachen hinzuzufügen, da keine XML-Änderungen erforderlich sind.
Ab Android Studio Giraffe und AGP 8.1 können Sie Ihre App so konfigurieren, dass
appspezifische Spracheinstellungen automatisch unterstützt werden. Basierend auf Ihren Projektressourcen generiert AGP die LocaleConfig-Datei und fügt einen Verweis darauf in der endgültigen Manifestdatei hinzu. Sie müssen das also nicht mehr manuell tun. AGP verwendet die Ressourcen in den res-Ordnern Ihrer App-Module und alle Bibliotheksmodulabhängigkeiten, um die Sprachen zu bestimmen, die in die LocaleConfig-Datei aufgenommen werden sollen.
Wenn Sie Ihrer App Ressourcen für eine neue Sprache hinzufügen, müssen Sie die LocaleConfig-Datei also nicht aktualisieren.
Die automatische Funktion für appspezifische Sprachen unterstützt Apps, die unter Android 13 (API-Level 33) oder höher ausgeführt werden. Damit Sie die Funktion verwenden können, müssen Sie compileSdkVersion auf 33 oder höher festlegen. Wenn Sie die Einstellung der bevorzugten Sprache pro App
für frühere Android-Versionen konfigurieren möchten, müssen Sie weiterhin die APIs und Sprachauswahlenin der App verwenden.
So aktivieren Sie die automatische Unterstützung von appspezifischen Sprachen:
- Aktivieren Sie die Funktion mit der
generateLocaleConfigEinstellung imandroidResources {}Block der `build.gradle.kts`-Datei auf Modulebenebuild.gradle.kts(build.gradleDatei, wenn Sie Groovy verwenden). Die Funktion ist standardmäßig deaktiviert.
Kotlin
android {
androidResources {
generateLocaleConfig = true
}
}
Groovy
android {
androidResources {
generateLocaleConfig true
}
}
- Geben Sie eine Standardsprache an:
- Erstellen Sie im Ordner
resdes App-Moduls eine neue Datei mit dem Namenresources.properties. - Legen Sie in der Datei
resources.propertiesdie Standardsprache mit dem LabelunqualifiedResLocalefest. Informationen zum Formatieren der Sprachnamen finden Sie unter Sprachnamen bilden.
- Erstellen Sie im Ordner
AGP fügt diese Standardsprache und alle alternativen Sprachen, die Sie angegeben haben,
mit values-* Verzeichnissen im res Ordner, der automatisch generierten
LocaleConfig Datei hinzu.
Sprachnamen bilden
Kombinieren Sie zum Bilden von Sprachnamen den Sprachcode mit den optionalen Skript- und Regionscodes und trennen Sie sie durch einen Bindestrich:
- Sprache: Verwenden Sie den zwei- oder dreistelligen ISO 639-2 Code.
- Skript (optional): Verwenden Sie den ISO 15924 Code.
- Region (optional): Verwenden Sie entweder den zweistelligen ISO 3166-1-alpha-2 Code oder den dreistelligen UN_M.49 Code.
Beispiel: Ihre Standardsprache ist amerikanisches Englisch:
unqualifiedResLocale=en-US
Mit android:localeConfig unterstützte Sprachen zu den Systemeinstellungen hinzufügen
Sie können Ihre App manuell so einrichten, dass die Sprachen auf Geräten mit Android 13 oder höher in den Systemeinstellungen konfiguriert werden können. Erstellen Sie dazu eine locale_config-XML-Datei und fügen Sie sie mit dem Attribut android:localeConfig dem Manifest Ihrer App hinzu. Wenn Sie den Manifesteintrag android:localeConfig weglassen, wird signalisiert, dass Nutzer die Sprache Ihrer App in den Systemeinstellungen nicht unabhängig von ihrer Systemsprache festlegen können.
So fügen Sie die unterstützten Sprachen Ihrer App manuell zu den Systemeinstellungen eines Nutzers hinzu:
-
Informationen zu den Formatierungsanforderungen finden Sie unter Sprachnamen bilden. Eine Liste der am häufigsten verwendeten Sprachen finden Sie auch in der Beispiel
locale_config.xmlDatei.Formatieren Sie die Datei
locale_config.xmlbeispielsweise so für eine App, die die folgenden Sprachen unterstützt:- Englisch (USA) als endgültige Fallbacksprache
- Englisch (Vereinigtes Königreich)
- Französisch
- Japanisch
- Chinesisch, vereinfacht (Macau)
- Chinesisch, traditionell (Macau)
<?xml version="1.0" encoding="utf-8"?> <locale-config xmlns:android="http://schemas.android.com/apk/res/android"> <locale android:name="en-US"/> <locale android:name="en-GB"/> <locale android:name="fr"/> <locale android:name="ja"/> <locale android:name="zh-Hans-MO"/> <locale android:name="zh-Hant-MO"/> </locale-config> Fügen Sie im Manifest eine Zeile hinzu, die auf diese neue Datei verweist:
<manifest> ... <application ... android:localeConfig="@xml/locale_config"> </application> </manifest>
Sie können die localeConfig Ihrer App mit LocaleManager.setOverrideLocaleConfig dynamisch aktualisieren, um die Liste der Sprachen anzupassen, die in den Android-Einstellungen für die appspezifische Sprache angezeigt werden. So können Sie die Sprachliste pro Region anpassen, A/B-Tests durchführen und aktualisierte Sprachen bereitstellen, wenn Ihre App serverseitige Lokalisierungs-Pushes verwendet, wie im folgenden Beispiel gezeigt:
//For setOverrideLocaleConfig
val localeManager = applicationContext
.getSystemService(LocaleManager::class.java)
localeManager.overrideLocaleConfig = LocaleConfig(
LocaleList.forLanguageTags("en-US,ja-JP,zh-Hans-SG")
)
//For getOverrideLocaleConfig
// The app calls the API to get the override LocaleConfig
val overrideLocaleConfig = localeManager.overrideLocaleConfig
// If the returned overrideLocaleConfig isn't equal to NULL, then the app calls the API to get the supported Locales
val supportedLocales = overrideLocaleConfig.supportedLocales()
Außerdem können IMEs jetzt LocaleManager.getApplicationLocales verwenden, um die Sprache der Benutzeroberfläche der aktuellen App zu ermitteln und die Tastatursprache zu aktualisieren, wie hier gezeigt:
val currentAppLocales: LocaleList = applicationContext.getSystemService(LocaleManager::class.java).getApplicationLocales(appPackageName)
Unterstützte Sprachen in Gradle angeben
Falls noch nicht vorhanden, geben Sie dieselben Sprachen mit der
resourceConfigurations Eigenschaft in der
build.gradle Datei auf Modulebene Ihrer App an:
android {
...
defaultConfig {
resourceConfigurations += ["en", "en-rGB", "fr", "ja", "b+zh+Hans+MO", "b+zh+Hant+MO"]
}
}
Wenn die Eigenschaft resourceConfigurations vorhanden ist, enthält das Build-System nur Sprachressourcen in der APK für diese angegebenen Sprachen. So wird verhindert, dass übersetzte Strings aus anderen Bibliotheken aufgenommen werden, die möglicherweise Sprachen unterstützen, die Ihre App nicht unterstützt. Weitere Informationen finden Sie unter Sprachen angeben, die von Ihrer App unterstützt werden.
So wählen Nutzer in den Systemeinstellungen eine App-Sprache aus
Nutzer können in den Systemeinstellungen ihre bevorzugte Sprache für jede App auswählen. Sie haben zwei Möglichkeiten, auf diese Einstellungen zuzugreifen:
Zugriff über die Systemeinstellungen
Einstellungen > System > Sprachen und Eingabe > App-Sprachen > (App auswählen)
Zugriff über die App-Einstellungen
Einstellungen > Apps > (App auswählen) > Sprache
Sprachauswahlen in der App verarbeiten
Verwenden Sie für Apps, die bereits eine Sprachauswahl in der App haben oder eine verwenden möchten, die öffentlichen APIs anstelle der benutzerdefinierten App-Logik, um die bevorzugte Sprache eines Nutzers für Ihre App festzulegen und abzurufen. Wenn Sie die öffentlichen APIs für die Sprachauswahl in der App verwenden, werden die Systemeinstellungen des Geräts automatisch so aktualisiert, dass sie mit der Sprache übereinstimmen, die der Nutzer über die App auswählt.
Mit Jetpack Compose implementieren
Bei Apps, die vollständig mit Jetpack Compose erstellt wurden, werden die UI-Updates automatisch vom System verarbeitet, wenn sich die Sprache der App ändert. Wenn Sie die API aufrufen, um eine neue Sprache festzulegen, wird eine Konfigurationsänderung ausgelöst. Compose reagiert darauf, indem die UI neu zusammengesetzt wird und alle stringResource-Aufrufe automatisch mit der neuen Sprache aufgelöst werden.
Aus Gründen der Abwärtskompatibilität mit Android 12 (API-Level 32) und niedriger empfehlen wir dringend, die AndroidX-Supportbibliothek (AppCompatDelegate) zu verwenden, wenn Sie eine Sprachauswahl in der App implementieren. Wenn Sie diesen Ansatz verwenden, muss die Aktivität, die Ihre Compose-UI hostet, AppCompatActivity erweitern. Sie können die Framework-APIs aber auch direkt
implementieren, wenn das erforderlich ist.
Das folgende Code-Snippet zeigt ein Beispiel dafür, wie Sie die aktuelle Sprache der App lesen und eine neue Sprache in einer zusammensetzbaren Funktion festlegen:
import androidx.appcompat.app.AppCompatDelegate
import androidx.compose.material3.Button
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.core.os.LocaleListCompat
@Composable
fun LanguageSelector() {
// Retrieve the currently configured app locale.
// If no app-specific locale is set, LocaleListCompat.get(0) returns null,
// so we safely fall back to a default (e.g., "en").
val appLocales = AppCompatDelegate.getApplicationLocales()
val currentLocaleTag = appLocales.get(0)?.toLanguageTag() ?: "en"
// Example UI: A button to toggle between English and Spanish
Button(
onClick = {
val newLanguageTag = if (currentLocaleTag == "en") "es" else "en"
val localeList = LocaleListCompat.forLanguageTags(newLanguageTag)
// Setting the locale re-creates the Activity by default,
// which automatically applies the new configuration to Compose.
AppCompatDelegate.setApplicationLocales(localeList)
}
) {
Text(
text = if (currentLocaleTag == "en") "Switch to Spanish" else "Switch to English"
)
}
}
Wenn Sie die bevorzugte Sprache eines Nutzers festlegen möchten, bitten Sie ihn, eine Sprache in der Sprachauswahl auszuwählen, und legen Sie diesen Wert dann im System fest:
val appLocale: LocaleListCompat = LocaleListCompat.forLanguageTags("xx-YY")
// Call this on the main thread as it may require Activity.restart()
AppCompatDelegate.setApplicationLocales(appLocale)
Beachten Sie, dass beim Aufrufen von setApplicationLocales Ihre Activity neu erstellt wird, es sei denn, Ihre App verarbeitet Konfigurationsänderungen für Sprachen selbst.
Verwenden Sie AppCompatDelegate.getApplicationLocales, um die bevorzugte Sprache des Nutzers
abzurufen. Der Nutzer hat die Sprache der App möglicherweise in den System
einstellungen oder über die Sprachauswahl in der App ausgewählt.
Android 12 und niedriger unterstützen
Wenn Sie Geräte mit Android 12 (API-Level 32) und niedriger unterstützen möchten, weisen Sie AndroidX an, die Speicherung von Sprachen zu verarbeiten, indem Sie im Manifesteintrag für den Dienst AppLocalesMetadataHolderService Ihrer App den Wert autoStoreLocales auf true und android:enabled auf false setzen, wie im folgenden Code-Snippet gezeigt:
<application
...
<service
android:name="androidx.appcompat.app.AppLocalesMetadataHolderService"
android:enabled="false"
android:exported="false">
<meta-data
android:name="autoStoreLocales"
android:value="true" />
</service>
...
</application>
Beachten Sie, dass das Setzen eines autoStoreLocales-Werts auf true einen Blocking-Lesezugriff im Hauptthread verursacht und zu einem StrictMode diskRead und diskWrite Verstoß führen kann, wenn Sie Thread-Verstöße protokollieren. Weitere Informationen finden Sie unter
AppCompatDelegate.setApplicationLocales.
Benutzerdefinierte Speicherverwaltung
Wenn Sie den Manifesteintrag weglassen oder autoStoreLocales auf false setzen, wird signalisiert, dass Sie die Speicherung selbst verarbeiten. In diesem Fall müssen Sie die gespeicherten Sprachen vor onCreate im Aktivitätslebenszyklus angeben und Aufrufe von AppCompatDelegate.setApplicationLocales in Android 12 (API-Level 32) oder niedriger einschränken.
Wenn Ihre App einen benutzerdefinierten Speicherort für Sprachen hat, empfehlen wir eine einmalige Übergabe zwischen Ihrer benutzerdefinierten Speicherlösung für Sprachen und autoStoreLocales, damit Nutzer Ihre App weiterhin in der bevorzugten Sprache verwenden können. Das gilt insbesondere, wenn Ihre App zum ersten Mal ausgeführt wird, nachdem ein Gerät auf Android 13 aktualisiert wurde. In diesem Fall können Sie bereits vorhandene, vom Nutzer angeforderte Sprachen bereitstellen, indem Sie die Sprachen aus Ihrem benutzerdefinierten Speicher abrufen und sie an AppCompatDelegate.setApplicationLocales übergeben.
Mit den Android-Framework-APIs implementieren
Wir empfehlen zwar dringend, die AndroidX-Supportbibliothek zum
Implementieren von Sprachauswahlen in der App zu verwenden, Sie können aber auch die
setApplicationLocales und getApplicationLocales Methoden im
Android-Framework für Geräte mit Android 13 verwenden.
Das folgende Code-Snippet zeigt, wie Sie die bevorzugte Sprache des Nutzers mit dem Systemdienst LocaleManager festlegen und abrufen:
import android.app.LocaleManager
import android.content.Context
import android.os.Build
import android.os.LocaleList
import androidx.annotation.RequiresApi
import java.util.Locale
@RequiresApi(Build.VERSION_CODES.TIRAMISU)
fun setAppLanguage(context: Context, languageTag: String) {
// 1. Retrieve the system service
val localeManager = context.getSystemService(LocaleManager::class.java)
// 2. Create a LocaleList from the language tag (e.g., "es-ES" or "ja")
val localeList = LocaleList(Locale.forLanguageTag(languageTag))
// 3. Set the locale. The system automatically updates the locale and
// restarts the app, including any necessary configuration updates.
localeManager.applicationLocales = localeList
}
@RequiresApi(Build.VERSION_CODES.TIRAMISU)
fun getAppLanguage(context: Context): String {
val localeManager = context.getSystemService(LocaleManager::class.java)
val currentLocales = localeManager.applicationLocales
// Return the primary app locale, or fall back to the system default
return if (!currentLocales.isEmpty) {
currentLocales.get(0).toLanguageTag()
} else {
Locale.getDefault().toLanguageTag()
}
}
Weitere Best Practices
Beachten Sie die folgenden Best Practices.
Sprache berücksichtigen, wenn Sie einen Intent in einer anderen App aufrufen
Mit sprachbezogenen Intents können Sie möglicherweise die Sprache angeben, in der die aufgerufene App ausgeführt werden soll. Ein Beispiel ist die EXTRA_LANGUAGE Funktion aus der
Speech Recognizer API.
Header „Accept-Language“ für benutzerdefinierten Chrome-Tab berücksichtigen
Sie können den Accept-Language Header über den
Browser.EXTRA_HEADERS hinzufügen, um eine Webseite in der Sprache Ihrer App zu öffnen, wenn Sie
einen Chrome-Custom-Tab aufrufen.
Wenn Sie die Einstellung der bevorzugten Sprache pro App in den Systemeinstellungen entfernen, setzen Sie die Sprache Ihrer App auf die Systemsprache zurück
Wenn Sie die Spracheinstellungen Ihrer App aus den Systemeinstellungen entfernen (indem Sie android:localeConfig aus der AndroidManifest.xml Ihrer App entfernen), können Nutzer die Sprache der App nicht einfach auf die Standardeinstellung des Systems zurücksetzen.
Wenn Sie android:localeConfig entfernen, sollten Sie die
Sprache der App mit
LocaleListCompat.getEmptyLocaleList oder
LocaleList.getEmptyLocaleList auf die Systemsprache zurücksetzen, wie im folgenden Code-Snippet gezeigt:
// Use the AndroidX APIs to reset to the system locale for backward and forward compatibility
AppCompatDelegate.setApplicationLocales(
LocaleListCompat.getEmptyLocaleList()
)
// Or use the Framework APIs for Android 13 and above to reset to the system locale
val context = LocalContext.current
context.getSystemService(LocaleManager::class.java)
.applicationLocales = LocaleList.getEmptyLocaleList()
Beispiel für eine locale_config.xml-Datei
Standardmäßig enthält Android Übersetzungen auf Systemebene im Open-Source-Projekt für Android (AOSP) für eine Standardgruppe der am häufigsten verwendeten Sprachen.
Die Beispieldatei locale_config.xml in diesem Abschnitt zeigt das empfohlene Format für jede dieser Sprachen. Verwenden Sie diese Beispieldatei als Hilfe beim Erstellen Ihrer eigenen locale_config.xml-Datei für die Sprachen, die Ihre App unterstützt.
<?xml version="1.0" encoding="utf-8"?>
<locale-config xmlns:android="http://schemas.android.com/apk/res/android">
<locale android:name="af"/> <!-- Afrikaans -->
<locale android:name="am"/> <!-- Amharic -->
<locale android:name="ar"/> <!-- Arabic -->
<locale android:name="as"/> <!-- Assamese -->
<locale android:name="az"/> <!-- Azerbaijani -->
<locale android:name="be"/> <!-- Belarusian -->
<locale android:name="bg"/> <!-- Bulgarian -->
<locale android:name="bn"/> <!-- Bengali -->
<locale android:name="bs"/> <!-- Bosnian -->
<locale android:name="ca"/> <!-- Catalan -->
<locale android:name="cs"/> <!-- Czech -->
<locale android:name="da"/> <!-- Danish -->
<locale android:name="de"/> <!-- German -->
<locale android:name="el"/> <!-- Greek -->
<locale android:name="en-AU"/> <!-- English (Australia) -->
<locale android:name="en-CA"/> <!-- English (Canada) -->
<locale android:name="en-GB"/> <!-- English (United Kingdom) -->
<locale android:name="en-IN"/> <!-- English (India) -->
<locale android:name="en-US"/> <!-- English (United States) -->
<locale android:name="es"/> <!-- Spanish (Spain) -->
<locale android:name="es-US"/> <!-- Spanish (United States) -->
<locale android:name="et"/> <!-- Estonian -->
<locale android:name="eu"/> <!-- Basque -->
<locale android:name="fa"/> <!-- Farsi -->
<locale android:name="fi"/> <!-- Finnish -->
<locale android:name="fil"/> <!-- Filipino -->
<locale android:name="fr"/> <!-- French (France) -->
<locale android:name="fr-CA"/> <!-- French (Canada) -->
<locale android:name="gl"/> <!-- Galician -->
<locale android:name="gu"/> <!-- Gujarati -->
<locale android:name="hi"/> <!-- Hindi -->
<locale android:name="hr"/> <!-- Croatian -->
<locale android:name="hu"/> <!-- Hungarian -->
<locale android:name="hy"/> <!-- Armenian -->
<locale android:name="in"/> <!-- Indonesian -->
<locale android:name="is"/> <!-- Icelandic -->
<locale android:name="it"/> <!-- Italian -->
<locale android:name="iw"/> <!-- Hebrew -->
<locale android:name="ja"/> <!-- Japanese -->
<locale android:name="ka"/> <!-- Georgian -->
<locale android:name="kk"/> <!-- Kazakh -->
<locale android:name="km"/> <!-- Khmer -->
<locale android:name="kn"/> <!-- Kannada -->
<locale android:name="ko"/> <!-- Korean -->
<locale android:name="ky"/> <!-- Kyrgyz -->
<locale android:name="lo"/> <!-- Lao -->
<locale android:name="lt"/> <!-- Lithuanian -->
<locale android:name="lv"/> <!-- Latvian -->
<locale android:name="mk"/> <!-- Macedonian -->
<locale android:name="ml"/> <!-- Malayalam -->
<locale android:name="mn"/> <!-- Mongolian -->
<locale android:name="mr"/> <!-- Marathi -->
<locale android:name="ms"/> <!-- Malay -->
<locale android:name="my"/> <!-- Burmese -->
<locale android:name="nb"/> <!-- Norwegian -->
<locale android:name="ne"/> <!-- Nepali -->
<locale android:name="nl"/> <!-- Dutch -->
<locale android:name="or"/> <!-- Odia -->
<locale android:name="pa"/> <!-- Punjabi -->
<locale android:name="pl"/> <!-- Polish -->
<locale android:name="pt-BR"/> <!-- Portuguese (Brazil) -->
<locale android:name="pt-PT"/> <!-- Portuguese (Portugal) -->
<locale android:name="ro"/> <!-- Romanian -->
<locale android:name="ru"/> <!-- Russian -->
<locale android:name="si"/> <!-- Sinhala -->
<locale android:name="sk"/> <!-- Slovak -->
<locale android:name="sl"/> <!-- Slovenian -->
<locale android:name="sq"/> <!-- Albanian -->
<locale android:name="sr"/> <!-- Serbian (Cyrillic) -->
<locale android:name="sr-Latn"/> <!-- Serbian (Latin) -->
<locale android:name="sv"/> <!-- Swedish -->
<locale android:name="sw"/> <!-- Swahili -->
<locale android:name="ta"/> <!-- Tamil -->
<locale android:name="te"/> <!-- Telugu -->
<locale android:name="th"/> <!-- Thai -->
<locale android:name="tr"/> <!-- Turkish -->
<locale android:name="uk"/> <!-- Ukrainian -->
<locale android:name="ur"/> <!-- Urdu -->
<locale android:name="uz"/> <!-- Uzbek -->
<locale android:name="vi"/> <!-- Vietnamese -->
<locale android:name="zh-Hans"/> <!-- Chinese (Simplified) -->
<locale android:name="zh-Hant"/> <!-- Chinese (Traditional) -->
<locale android:name="zu"/> <!-- Zulu -->
</locale-config>
Zusätzliche Ressourcen
Weitere Informationen finden Sie in unseren Codebeispielen, Blogartikeln und Videos.
- Blog zu Einstellung der bevorzugten Sprache pro App, Teil 1
- Blog zu Einstellung der bevorzugten Sprache pro App, Teil 2
- Video zum Entwickeln für eine mehrsprachige Welt
- Ressourcen in Compose