Wenn Sie mit Android-Nutzern aus verschiedenen Ländern und Kulturen in Kontakt treten möchten, müssen Sie Ihre App so lokalisieren, dass sie mehrere Sprachen unterstützt. Dieser Prozess beginnt mit der Android-Internationalisierung (i18n), die den Grundstein für eine nahtlose Lokalisierung legt.
Wenn Sie Ihre Android-App internationalisieren, müssen Sie sie so entwerfen, dass sie mehrere Sprachen unterstützt, ohne dass technische Änderungen erforderlich sind. Dadurch wird sich Ihre App für Benutzer aus einer anderen Region oder Kultur vertraut anfühlen, was die Benutzerfreundlichkeit erhöht und die Tür zu neuen Märkten öffnet. Der Vorgang muss nur einmal durchgeführt werden, was Ihnen bei jeder weiteren Lokalisierung Zeit und Geld spart.
Diese Schritt-für-Schritt-Anleitung führt Sie durch den Prozess der Internationalisierung und Lokalisierung Ihrer Android-App. Sie erfahren, wie Sie Ihre App vorbereiten, mit dynamischen Inhalten umgehen und sie in verschiedenen Sprachen und Gebietsschemas testen.
So bereiten Sie sich auf die Lokalisierung von Android-Apps vor
Mit der Internationalisierung wird Ihre Android-App auf die Lokalisierung vorbereitet. Dieser Prozess schafft eine solide Grundlage innerhalb von Android Studio, um sicherzustellen, dass Ihre App mehrere Sprachen und Regionen unterstützt. So legen Sie los:
-
Android Studio installieren
Beginnen Sie mit dem Herunterladen und Installieren von Android Studio. Android Studio ist die offizielle Entwicklungsumgebung für Android und bietet alles, was Sie zum Internationalisieren, Lokalisieren und Testen Ihrer App benötigen.
-
Erstellen eines neuen Android-Projekts
Öffnen Sie Android Studio und erstellen Sie ein neues Projekt. Die Vorlage "Leere Aktivität" bietet einen einfachen Ausgangspunkt.
Konfigurieren Sie dann Ihre Projekteinstellungen wie folgt:
- Name: Geben Sie Ihren App-Namen ein (z. B. "LocalizedApp").
- Name des Pakets: Verwenden Sie einen eindeutigen Bezeichner wie "com.example.localizedappi18n".
- Sprache: Wählen Sie Kotlin (empfohlen) oder Java aus.
- Mindest-SDK: Legen Sie die niedrigste Android-Version fest, die Ihre App unterstützt.
Bestätigen Sie dann Ihre Auswahl, um die Projektstruktur zu generieren.
-
Hinzufügen von UI-Elementen mit flexiblen Layouts
Achten Sie beim Hinzufügen von UI-Elementen auf die Lokalisierung. Sprachen wie Deutsch benötigen oft mehr Platz als Englisch, während chinesische Schriftzeichen kompakter sind. Vermeiden Sie es, feste Breiten für Textelemente festzulegen, da längere Übersetzungen in einigen Sprachen die Containergröße überschreiten können.
Erwägen Sie die Verwendung von Tools wie ConstraintLayout, damit UI-Elemente Position und Größe basierend auf der Länge des übersetzten Texts dynamisch anpassen können.
Hier ist ein XML-Beispiel:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/welcome_message"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
Hier wird die TextView verwendet, um eine Zeichenfolgenressource (z. B. eine Willkommensnachricht) anzuzeigen. Durch die Verwendung von wrap_content für die Breite wird die Größe des Elements automatisch an die Länge des übersetzten Textes angepasst, anstatt durch eine feste Dimension eingeschränkt zu werden. Darüber hinaus sorgt ConstraintLayout dafür, dass die TextView unabhängig von der Textlänge oder Bildschirmgröße ordnungsgemäß auf dem Bildschirm positioniert ist.
Wenn Sie von Anfang an ein flexibles Layout erstellen, sieht Ihre App unabhängig von der Sprache, in die sie lokalisiert wird, großartig aus.
-
Bereiten Sie sich auf die Lokalisierung mit ausgelagertem Text vor
Der letzte Schritt zum Vorbereiten Ihrer Android-App für die Lokalisierung erfordert, dass Sie den gesamten benutzerseitigen Text in einer separaten Ressourcendatei speichern, anstatt ihn fest zu codieren. Mit einer zentralisierten Ressourcendatei wie strings.xml Sie müssen Text, der über den Code verstreut ist, nicht manuell ersetzen.
So geht's:
- Suchen Sie den Ordner „res/values/“ in Ihrem Projektverzeichnis.
- Öffnen Sie den "strings.xml" Datei (wenn sie nicht vorhanden ist, erstellen Sie eine).
- Fügen Sie der Datei Ihren Text mit einem Name-Wert-Paar hinzu:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="welcome_message">Willkommen in meiner App!</string>
</resources>
Kehren Sie zur activity_main.xml Datei zurück, und aktualisieren Sie die TextView, um auf die Zeichenfolgenressource zu verweisen:
<TextView
android:text="@string/welcome_message"
Durch die Organisation Ihres Projekts auf diese Weise wird Ihre Android-App internationalisiert, sodass Sie den Inhalt, der in eine andere Sprache lokalisiert werden muss, problemlos abgrenzen können.
So lokalisieren Sie eine Android-App in 4 Schritten
Nachdem Sie Ihre Android-App vorbereitet haben, ist es an der Zeit, den Lokalisierungsprozess Schritt für Schritt zu durchlaufen, vom Einrichten sprachspezifischer Ressourcen bis hin zum dynamischen Ändern des Gebietsschemas der Android-App.
-
Erweitern Sie strings.xml für die Lokalisierung
In der Vorbereitungsphase haben Sie eine strings.xml Datei erstellt, um den gesamten Text in Ihrer Android-App zu verwalten. Jetzt ist es an der Zeit, dies zu erweitern, indem Sie sprachspezifische Versionen der Datei für jede unterstützte Sprache erstellen.
Erstellen Sie zunächst neue Ordner für jede Zielsprache im res-Verzeichnis Ihres Projekts. Verwenden Sie einen Ordnernamen, der den entsprechenden Sprachcode enthält (z. B. "res/values-es/" für Spanisch und "res/values-fr/" für Französisch).
Kopieren Sie Ihre Standard-strings.xml-Datei in jeden Ordner. Übersetzen Sie dann den Text für jede Sprache manuell. In der englischen Standarddatei könnte z. B. Folgendes lauten:
<TextView
<string name="hello_world">Hello, World!string>
Die spanische Version in "values-es/strings.xml" Wäre:
<TextView
<string name="hello_world">¡Hola, Mundo!string>
Nachdem Sie diese sprachspezifischen XML-Dateien erstellt haben, wählt Android automatisch die richtige Version strings.xml basierend auf den Spracheinstellungen des Benutzers aus.
-
Umgang mit Pluralformen für genaue Übersetzungen
Pluralformen sind knifflig, weil sie in jeder Sprache anders gehandhabt werden. Zum Beispiel ist "one item" im Englischen Singular, aber jede zweite Zahl ist Plural, egal ob "null items" oder "zweihundert items". In Sprachen wie Russisch, Walisisch und Tschechisch gelten jedoch spezifischere Regeln für den Plural, der auf der Zahl basiert.
So definieren Sie pluralisierte Zeichenfolgen in strings.xml für Englisch:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<plurals name="item_count">
<item quantity="one">%d item</item>
<item quantity="other">%d Artikel</item>
</plurals>
</resources>
Dies entspricht den folgenden Mengenwerten:
- Eins: Wird für Singularformen (z. B. ein Element) verwendet.
- Andere: Wird für Pluralformen verwendet (z. B. null Elemente, zwei Elemente, drei Elemente).
Im Englischen sind nur "one" und "other" erforderlich, aber andere Sprachen haben mehr Klassifikationen. Um dies zu verwalten, stellt Android ein Tag in strings.xml bereit. Android unterstützt Tags für null, eins, zwei, wenige, viele und andere. Im Folgenden finden Sie Beispiele für Sprachen, in denen die einzelnen Tags verwendet werden:
- Im Arabischen wird eine spezielle grammatikalische Übereinstimmung für Null verwendet.
- Im Russischen wird jede Zahl, die auf "1" endet, anders behandelt, es sei denn, sie endet mit "11".
- Walisisch verwendet eine deutliche Pluralisierung, wenn es zwei von etwas gibt.
- Sprachen wie Tschechisch und Maltesisch unterscheiden zwischen kleinen und großen Zahlen.
- Das Chinesische macht keinen Unterschied.
So rufen Sie die pluralisierte Zeichenfolge in Kotlin ab und formatieren sie:
val itemCount = 3
val Nachricht = resources.getQuantityString(R.plurals.item_count, itemCount, itemCount)
In diesem Code wird R.plurals.item_count ist die Plural-Ressourcen-ID. Die erste itemCount wählt die Pluralzeichenfolge basierend auf den Pluralregeln des Gebietsschemas des Geräts aus, und der zweite itemCount ersetzt den Platzhalter%d.
Hier sind zum Beispiel die Ausgaben für Englisch:
- Für itemCount = 1: "1 Artikel"
- Für itemCount = 3: "3 Artikel"
-
Verwenden von Platzhaltern für dynamische Werte
Apps zeigen oft personalisierte oder dynamische Inhalte an, z. B. den Namen eines Benutzers oder die Anzahl der Benachrichtigungen, die er hat. Anstatt diesen Inhalt fest zu codieren, können Sie Platzhalter in Ihren Zeichenfolgen wie folgt verwenden:
<resources>
<string name="welcome_message">Willkommen, %1$s! Sie haben %2$d neue Nachrichten.</string>
</resources>
Und so funktioniert es:
- %1$s ist ein Platzhalter für eine Zeichenkette (z. B. einen Namen).
- %2$d ist ein Platzhalter für eine Zahl (z. B. die Anzahl der Nachrichten).
Wenn die App ausgeführt wird, werden diese Platzhalter dynamisch durch Werte ersetzt, die vom Benutzer und seinen dynamischen Daten eingegeben werden.
-
Kontextbezogene Hinweise hinzufügen
Übersetzer wissen nicht immer, wie eine Zeichenfolge in Ihrer App verwendet wird. Beispielsweise könnte ein Wort wie „Menü“ eine Dropdown-Liste, die Speisekarte eines Restaurants oder eine Einstellungsseite bedeuten. Um Verwirrung zu vermeiden, können Sie Kommentare direkt in Ihre strings.xml einfügen:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- This string is used as a label for the navigation menu →
<string name="menu_label">Menu</string>
<!-- This string is used for the settings button in the app →
<string name="settings_label">Settings</string>
</resources>
Diese Notizen teilen dem Übersetzer mit, dass sich das Wort "Menü" auf eine Navigationsfunktion in der App und nicht auf eine Restaurantkarte bezieht.
Testen der Lokalisierung in Android
Das Testen Ihrer lokalisierten Android-App ist entscheidend, um sicherzustellen, dass sie in verschiedenen Sprachen und Regionen funktioniert. Durch das Testen auf Emulatoren und echten Geräten können Sie Probleme erkennen und eine App bereitstellen, die sich für Benutzer weltweit natürlich und funktional anfühlt.
Warum auf echten Geräten testen?
Echte Geräte bieten die beste Simulation der Interaktion von Benutzern mit Ihrer App. Sie zeigen Ihnen, wie übersetzter Text auf einem tatsächlichen Telefonbildschirm aussieht – ob er zu lang oder abgeschnitten ist.
Warum mit Emulatoren testen?
Emulatoren sind eine praktische Möglichkeit, Ihre App in zahlreichen Konfigurationen zu testen. Sie ermöglichen es Ihnen, schnell zwischen Sprachen und Regionen zu wechseln, um Übersetzungen, Layoutanpassungen und das Verhalten der Benutzeroberfläche zu überprüfen.
Durch die Kombination beider Methoden können Sie eine optimale Funktionalität und Benutzererfahrung in mehreren Sprachen und Gebietsschemas aufrechterhalten.
So verwenden Sie Smartling zur Android-Lokalisierung
Smartling reduziert die Komplexität der Android-Lokalisierung. Mit KI-gestützten Tools, nahtlosen Android XML-Dateiintegrationen und einem Team aus erfahrenen Übersetzern bietet Smartling mehrere Dienste, um den gesamten Übersetzungsprozess von Anfang bis Ende zu optimieren und manuelle Arbeitsabläufe zu automatisieren.
Ihr Unternehmen kann die Automatisierungssysteme und datengesteuerten Erkenntnisse von Smartling nutzen, um schneller zu lokalisieren und die Markenkonsistenz auf den globalen Märkten zu wahren, Ihre Wettbewerber zu übertreffen und gleichzeitig ein unvergleichliches Benutzererlebnis zu bieten.
Sind Sie bereit, intelligenter zu lokalisieren, nicht schwieriger? Laden Sie unser kostenloses E-Book "10 Strategien zur Steigerung der Übersetzungseffizienz" herunter. Sie erfahren, wie Sie die Geschwindigkeit, Qualität und Kosten von Übersetzungen mit umsetzbaren Strategien und Beispielen aus der Praxis verbessern können.
Wenn Sie mit Android-Nutzern aus verschiedenen Ländern und Kulturen in Kontakt treten möchten, müssen Sie Ihre App so lokalisieren, dass sie mehrere Sprachen unterstützt. Dieser Prozess beginnt mit der Android-Internationalisierung (i18n), die den Grundstein für eine nahtlose Lokalisierung legt.
Wenn Sie Ihre Android-App internationalisieren, müssen Sie sie so entwerfen, dass sie mehrere Sprachen unterstützt, ohne dass technische Änderungen erforderlich sind. Dadurch wird sich Ihre App für Benutzer aus einer anderen Region oder Kultur vertraut anfühlen, was die Benutzerfreundlichkeit erhöht und die Tür zu neuen Märkten öffnet. Der Vorgang muss nur einmal durchgeführt werden, was Ihnen bei jeder weiteren Lokalisierung Zeit und Geld spart.
Diese Schritt-für-Schritt-Anleitung führt Sie durch den Prozess der Internationalisierung und Lokalisierung Ihrer Android-App. Sie erfahren, wie Sie Ihre App vorbereiten, mit dynamischen Inhalten umgehen und sie in verschiedenen Sprachen und Gebietsschemas testen.
So bereiten Sie sich auf die Lokalisierung von Android-Apps vor
Mit der Internationalisierung wird Ihre Android-App auf die Lokalisierung vorbereitet. Dieser Prozess schafft eine solide Grundlage innerhalb von Android Studio, um sicherzustellen, dass Ihre App mehrere Sprachen und Regionen unterstützt. So legen Sie los:
-
Android Studio installieren
Beginnen Sie mit dem Herunterladen und Installieren von Android Studio. Android Studio ist die offizielle Entwicklungsumgebung für Android und bietet alles, was Sie zum Internationalisieren, Lokalisieren und Testen Ihrer App benötigen.
-
Erstellen eines neuen Android-Projekts
Öffnen Sie Android Studio und erstellen Sie ein neues Projekt. Die Vorlage "Leere Aktivität" bietet einen einfachen Ausgangspunkt.
Konfigurieren Sie dann Ihre Projekteinstellungen wie folgt:
- Name: Geben Sie Ihren App-Namen ein (z. B. "LocalizedApp").
- Name des Pakets: Verwenden Sie einen eindeutigen Bezeichner wie "com.example.localizedappi18n".
- Sprache: Wählen Sie Kotlin (empfohlen) oder Java aus.
- Mindest-SDK: Legen Sie die niedrigste Android-Version fest, die Ihre App unterstützt.
Bestätigen Sie dann Ihre Auswahl, um die Projektstruktur zu generieren.
-
Hinzufügen von UI-Elementen mit flexiblen Layouts
Achten Sie beim Hinzufügen von UI-Elementen auf die Lokalisierung. Sprachen wie Deutsch benötigen oft mehr Platz als Englisch, während chinesische Schriftzeichen kompakter sind. Vermeiden Sie es, feste Breiten für Textelemente festzulegen, da längere Übersetzungen in einigen Sprachen die Containergröße überschreiten können.
Erwägen Sie die Verwendung von Tools wie ConstraintLayout, damit UI-Elemente Position und Größe basierend auf der Länge des übersetzten Texts dynamisch anpassen können.
Hier ist ein XML-Beispiel:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/welcome_message"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
Hier wird die TextView verwendet, um eine Zeichenfolgenressource (z. B. eine Willkommensnachricht) anzuzeigen. Durch die Verwendung von wrap_content für die Breite wird die Größe des Elements automatisch an die Länge des übersetzten Textes angepasst, anstatt durch eine feste Dimension eingeschränkt zu werden. Darüber hinaus sorgt ConstraintLayout dafür, dass die TextView unabhängig von der Textlänge oder Bildschirmgröße ordnungsgemäß auf dem Bildschirm positioniert ist.
Wenn Sie von Anfang an ein flexibles Layout erstellen, sieht Ihre App unabhängig von der Sprache, in die sie lokalisiert wird, großartig aus.
-
Bereiten Sie sich auf die Lokalisierung mit ausgelagertem Text vor
Der letzte Schritt zum Vorbereiten Ihrer Android-App für die Lokalisierung erfordert, dass Sie den gesamten benutzerseitigen Text in einer separaten Ressourcendatei speichern, anstatt ihn fest zu codieren. Mit einer zentralisierten Ressourcendatei wie strings.xml Sie müssen Text, der über den Code verstreut ist, nicht manuell ersetzen.
So geht's:
- Suchen Sie den Ordner „res/values/“ in Ihrem Projektverzeichnis.
- Öffnen Sie den "strings.xml" Datei (wenn sie nicht vorhanden ist, erstellen Sie eine).
- Fügen Sie der Datei Ihren Text mit einem Name-Wert-Paar hinzu:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="welcome_message">Willkommen in meiner App!</string>
</resources>
Kehren Sie zur activity_main.xml Datei zurück, und aktualisieren Sie die TextView, um auf die Zeichenfolgenressource zu verweisen:
<TextView
android:text="@string/welcome_message"
Durch die Organisation Ihres Projekts auf diese Weise wird Ihre Android-App internationalisiert, sodass Sie den Inhalt, der in eine andere Sprache lokalisiert werden muss, problemlos abgrenzen können.
So lokalisieren Sie eine Android-App in 4 Schritten
Nachdem Sie Ihre Android-App vorbereitet haben, ist es an der Zeit, den Lokalisierungsprozess Schritt für Schritt zu durchlaufen, vom Einrichten sprachspezifischer Ressourcen bis hin zum dynamischen Ändern des Gebietsschemas der Android-App.
-
Erweitern Sie strings.xml für die Lokalisierung
In der Vorbereitungsphase haben Sie eine strings.xml Datei erstellt, um den gesamten Text in Ihrer Android-App zu verwalten. Jetzt ist es an der Zeit, dies zu erweitern, indem Sie sprachspezifische Versionen der Datei für jede unterstützte Sprache erstellen.
Erstellen Sie zunächst neue Ordner für jede Zielsprache im res-Verzeichnis Ihres Projekts. Verwenden Sie einen Ordnernamen, der den entsprechenden Sprachcode enthält (z. B. "res/values-es/" für Spanisch und "res/values-fr/" für Französisch).
Kopieren Sie Ihre Standard-strings.xml-Datei in jeden Ordner. Übersetzen Sie dann den Text für jede Sprache manuell. In der englischen Standarddatei könnte z. B. Folgendes lauten:
<TextView
<string name="hello_world">Hello, World!string>
Die spanische Version in "values-es/strings.xml" Wäre:
<TextView
<string name="hello_world">¡Hola, Mundo!string>
Nachdem Sie diese sprachspezifischen XML-Dateien erstellt haben, wählt Android automatisch die richtige Version strings.xml basierend auf den Spracheinstellungen des Benutzers aus.
-
Umgang mit Pluralformen für genaue Übersetzungen
Pluralformen sind knifflig, weil sie in jeder Sprache anders gehandhabt werden. Zum Beispiel ist "one item" im Englischen Singular, aber jede zweite Zahl ist Plural, egal ob "null items" oder "zweihundert items". In Sprachen wie Russisch, Walisisch und Tschechisch gelten jedoch spezifischere Regeln für den Plural, der auf der Zahl basiert.
So definieren Sie pluralisierte Zeichenfolgen in strings.xml für Englisch:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<plurals name="item_count">
<item quantity="one">%d item</item>
<item quantity="other">%d Artikel</item>
</plurals>
</resources>
Dies entspricht den folgenden Mengenwerten:
- Eins: Wird für Singularformen (z. B. ein Element) verwendet.
- Andere: Wird für Pluralformen verwendet (z. B. null Elemente, zwei Elemente, drei Elemente).
Im Englischen sind nur "one" und "other" erforderlich, aber andere Sprachen haben mehr Klassifikationen. Um dies zu verwalten, stellt Android ein Tag in strings.xml bereit. Android unterstützt Tags für null, eins, zwei, wenige, viele und andere. Im Folgenden finden Sie Beispiele für Sprachen, in denen die einzelnen Tags verwendet werden:
- Im Arabischen wird eine spezielle grammatikalische Übereinstimmung für Null verwendet.
- Im Russischen wird jede Zahl, die auf "1" endet, anders behandelt, es sei denn, sie endet mit "11".
- Walisisch verwendet eine deutliche Pluralisierung, wenn es zwei von etwas gibt.
- Sprachen wie Tschechisch und Maltesisch unterscheiden zwischen kleinen und großen Zahlen.
- Das Chinesische macht keinen Unterschied.
So rufen Sie die pluralisierte Zeichenfolge in Kotlin ab und formatieren sie:
val itemCount = 3
val Nachricht = resources.getQuantityString(R.plurals.item_count, itemCount, itemCount)
In diesem Code wird R.plurals.item_count ist die Plural-Ressourcen-ID. Die erste itemCount wählt die Pluralzeichenfolge basierend auf den Pluralregeln des Gebietsschemas des Geräts aus, und der zweite itemCount ersetzt den Platzhalter%d.
Hier sind zum Beispiel die Ausgaben für Englisch:
- Für itemCount = 1: "1 Artikel"
- Für itemCount = 3: "3 Artikel"
-
Verwenden von Platzhaltern für dynamische Werte
Apps zeigen oft personalisierte oder dynamische Inhalte an, z. B. den Namen eines Benutzers oder die Anzahl der Benachrichtigungen, die er hat. Anstatt diesen Inhalt fest zu codieren, können Sie Platzhalter in Ihren Zeichenfolgen wie folgt verwenden:
<resources>
<string name="welcome_message">Willkommen, %1$s! Sie haben %2$d neue Nachrichten.</string>
</resources>
Und so funktioniert es:
- %1$s ist ein Platzhalter für eine Zeichenkette (z. B. einen Namen).
- %2$d ist ein Platzhalter für eine Zahl (z. B. die Anzahl der Nachrichten).
Wenn die App ausgeführt wird, werden diese Platzhalter dynamisch durch Werte ersetzt, die vom Benutzer und seinen dynamischen Daten eingegeben werden.
-
Kontextbezogene Hinweise hinzufügen
Übersetzer wissen nicht immer, wie eine Zeichenfolge in Ihrer App verwendet wird. Beispielsweise könnte ein Wort wie „Menü“ eine Dropdown-Liste, die Speisekarte eines Restaurants oder eine Einstellungsseite bedeuten. Um Verwirrung zu vermeiden, können Sie Kommentare direkt in Ihre strings.xml einfügen:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- This string is used as a label for the navigation menu →
<string name="menu_label">Menu</string>
<!-- This string is used for the settings button in the app →
<string name="settings_label">Settings</string>
</resources>
Diese Notizen teilen dem Übersetzer mit, dass sich das Wort "Menü" auf eine Navigationsfunktion in der App und nicht auf eine Restaurantkarte bezieht.
Testen der Lokalisierung in Android
Das Testen Ihrer lokalisierten Android-App ist entscheidend, um sicherzustellen, dass sie in verschiedenen Sprachen und Regionen funktioniert. Durch das Testen auf Emulatoren und echten Geräten können Sie Probleme erkennen und eine App bereitstellen, die sich für Benutzer weltweit natürlich und funktional anfühlt.
Warum auf echten Geräten testen?
Echte Geräte bieten die beste Simulation der Interaktion von Benutzern mit Ihrer App. Sie zeigen Ihnen, wie übersetzter Text auf einem tatsächlichen Telefonbildschirm aussieht – ob er zu lang oder abgeschnitten ist.
Warum mit Emulatoren testen?
Emulatoren sind eine praktische Möglichkeit, Ihre App in zahlreichen Konfigurationen zu testen. Sie ermöglichen es Ihnen, schnell zwischen Sprachen und Regionen zu wechseln, um Übersetzungen, Layoutanpassungen und das Verhalten der Benutzeroberfläche zu überprüfen.
Durch die Kombination beider Methoden können Sie eine optimale Funktionalität und Benutzererfahrung in mehreren Sprachen und Gebietsschemas aufrechterhalten.
So verwenden Sie Smartling zur Android-Lokalisierung
Smartling reduziert die Komplexität der Android-Lokalisierung. Mit KI-gestützten Tools, nahtlosen Android XML-Dateiintegrationen und einem Team aus erfahrenen Übersetzern bietet Smartling mehrere Dienste, um den gesamten Übersetzungsprozess von Anfang bis Ende zu optimieren und manuelle Arbeitsabläufe zu automatisieren.
Ihr Unternehmen kann die Automatisierungssysteme und datengesteuerten Erkenntnisse von Smartling nutzen, um schneller zu lokalisieren und die Markenkonsistenz auf den globalen Märkten zu wahren, Ihre Wettbewerber zu übertreffen und gleichzeitig ein unvergleichliches Benutzererlebnis zu bieten.
Sind Sie bereit, intelligenter zu lokalisieren, nicht schwieriger? Laden Sie unser kostenloses E-Book "10 Strategien zur Steigerung der Übersetzungseffizienz" herunter. Sie erfahren, wie Sie die Geschwindigkeit, Qualität und Kosten von Übersetzungen mit umsetzbaren Strategien und Beispielen aus der Praxis verbessern können.
Wenn Sie mit Android-Nutzern aus verschiedenen Ländern und Kulturen in Kontakt treten möchten, müssen Sie Ihre App so lokalisieren, dass sie mehrere Sprachen unterstützt. Dieser Prozess beginnt mit der Android-Internationalisierung (i18n), die den Grundstein für eine nahtlose Lokalisierung legt.
Wenn Sie Ihre Android-App internationalisieren, müssen Sie sie so entwerfen, dass sie mehrere Sprachen unterstützt, ohne dass technische Änderungen erforderlich sind. Dadurch wird sich Ihre App für Benutzer aus einer anderen Region oder Kultur vertraut anfühlen, was die Benutzerfreundlichkeit erhöht und die Tür zu neuen Märkten öffnet. Der Vorgang muss nur einmal durchgeführt werden, was Ihnen bei jeder weiteren Lokalisierung Zeit und Geld spart.
Diese Schritt-für-Schritt-Anleitung führt Sie durch den Prozess der Internationalisierung und Lokalisierung Ihrer Android-App. Sie erfahren, wie Sie Ihre App vorbereiten, mit dynamischen Inhalten umgehen und sie in verschiedenen Sprachen und Gebietsschemas testen.
So bereiten Sie sich auf die Lokalisierung von Android-Apps vor
Mit der Internationalisierung wird Ihre Android-App auf die Lokalisierung vorbereitet. Dieser Prozess schafft eine solide Grundlage innerhalb von Android Studio, um sicherzustellen, dass Ihre App mehrere Sprachen und Regionen unterstützt. So legen Sie los:
-
Android Studio installieren
Beginnen Sie mit dem Herunterladen und Installieren von Android Studio. Android Studio ist die offizielle Entwicklungsumgebung für Android und bietet alles, was Sie zum Internationalisieren, Lokalisieren und Testen Ihrer App benötigen.
-
Erstellen eines neuen Android-Projekts
Öffnen Sie Android Studio und erstellen Sie ein neues Projekt. Die Vorlage "Leere Aktivität" bietet einen einfachen Ausgangspunkt.
Konfigurieren Sie dann Ihre Projekteinstellungen wie folgt:
- Name: Geben Sie Ihren App-Namen ein (z. B. "LocalizedApp").
- Name des Pakets: Verwenden Sie einen eindeutigen Bezeichner wie "com.example.localizedappi18n".
- Sprache: Wählen Sie Kotlin (empfohlen) oder Java aus.
- Mindest-SDK: Legen Sie die niedrigste Android-Version fest, die Ihre App unterstützt.
Bestätigen Sie dann Ihre Auswahl, um die Projektstruktur zu generieren.
-
Hinzufügen von UI-Elementen mit flexiblen Layouts
Achten Sie beim Hinzufügen von UI-Elementen auf die Lokalisierung. Sprachen wie Deutsch benötigen oft mehr Platz als Englisch, während chinesische Schriftzeichen kompakter sind. Vermeiden Sie es, feste Breiten für Textelemente festzulegen, da längere Übersetzungen in einigen Sprachen die Containergröße überschreiten können.
Erwägen Sie die Verwendung von Tools wie ConstraintLayout, damit UI-Elemente Position und Größe basierend auf der Länge des übersetzten Texts dynamisch anpassen können.
Hier ist ein XML-Beispiel:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/welcome_message"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
Hier wird die TextView verwendet, um eine Zeichenfolgenressource (z. B. eine Willkommensnachricht) anzuzeigen. Durch die Verwendung von wrap_content für die Breite wird die Größe des Elements automatisch an die Länge des übersetzten Textes angepasst, anstatt durch eine feste Dimension eingeschränkt zu werden. Darüber hinaus sorgt ConstraintLayout dafür, dass die TextView unabhängig von der Textlänge oder Bildschirmgröße ordnungsgemäß auf dem Bildschirm positioniert ist.
Wenn Sie von Anfang an ein flexibles Layout erstellen, sieht Ihre App unabhängig von der Sprache, in die sie lokalisiert wird, großartig aus.
-
Bereiten Sie sich auf die Lokalisierung mit ausgelagertem Text vor
Der letzte Schritt zum Vorbereiten Ihrer Android-App für die Lokalisierung erfordert, dass Sie den gesamten benutzerseitigen Text in einer separaten Ressourcendatei speichern, anstatt ihn fest zu codieren. Mit einer zentralisierten Ressourcendatei wie strings.xml Sie müssen Text, der über den Code verstreut ist, nicht manuell ersetzen.
So geht's:
- Suchen Sie den Ordner „res/values/“ in Ihrem Projektverzeichnis.
- Öffnen Sie den "strings.xml" Datei (wenn sie nicht vorhanden ist, erstellen Sie eine).
- Fügen Sie der Datei Ihren Text mit einem Name-Wert-Paar hinzu:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="welcome_message">Willkommen in meiner App!</string>
</resources>
Kehren Sie zur activity_main.xml Datei zurück, und aktualisieren Sie die TextView, um auf die Zeichenfolgenressource zu verweisen:
<TextView
android:text="@string/welcome_message"
Durch die Organisation Ihres Projekts auf diese Weise wird Ihre Android-App internationalisiert, sodass Sie den Inhalt, der in eine andere Sprache lokalisiert werden muss, problemlos abgrenzen können.
So lokalisieren Sie eine Android-App in 4 Schritten
Nachdem Sie Ihre Android-App vorbereitet haben, ist es an der Zeit, den Lokalisierungsprozess Schritt für Schritt zu durchlaufen, vom Einrichten sprachspezifischer Ressourcen bis hin zum dynamischen Ändern des Gebietsschemas der Android-App.
-
Erweitern Sie strings.xml für die Lokalisierung
In der Vorbereitungsphase haben Sie eine strings.xml Datei erstellt, um den gesamten Text in Ihrer Android-App zu verwalten. Jetzt ist es an der Zeit, dies zu erweitern, indem Sie sprachspezifische Versionen der Datei für jede unterstützte Sprache erstellen.
Erstellen Sie zunächst neue Ordner für jede Zielsprache im res-Verzeichnis Ihres Projekts. Verwenden Sie einen Ordnernamen, der den entsprechenden Sprachcode enthält (z. B. "res/values-es/" für Spanisch und "res/values-fr/" für Französisch).
Kopieren Sie Ihre Standard-strings.xml-Datei in jeden Ordner. Übersetzen Sie dann den Text für jede Sprache manuell. In der englischen Standarddatei könnte z. B. Folgendes lauten:
<TextView
<string name="hello_world">Hello, World!string>
Die spanische Version in "values-es/strings.xml" Wäre:
<TextView
<string name="hello_world">¡Hola, Mundo!string>
Nachdem Sie diese sprachspezifischen XML-Dateien erstellt haben, wählt Android automatisch die richtige Version strings.xml basierend auf den Spracheinstellungen des Benutzers aus.
-
Umgang mit Pluralformen für genaue Übersetzungen
Pluralformen sind knifflig, weil sie in jeder Sprache anders gehandhabt werden. Zum Beispiel ist "one item" im Englischen Singular, aber jede zweite Zahl ist Plural, egal ob "null items" oder "zweihundert items". In Sprachen wie Russisch, Walisisch und Tschechisch gelten jedoch spezifischere Regeln für den Plural, der auf der Zahl basiert.
So definieren Sie pluralisierte Zeichenfolgen in strings.xml für Englisch:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<plurals name="item_count">
<item quantity="one">%d item</item>
<item quantity="other">%d Artikel</item>
</plurals>
</resources>
Dies entspricht den folgenden Mengenwerten:
- Eins: Wird für Singularformen (z. B. ein Element) verwendet.
- Andere: Wird für Pluralformen verwendet (z. B. null Elemente, zwei Elemente, drei Elemente).
Im Englischen sind nur "one" und "other" erforderlich, aber andere Sprachen haben mehr Klassifikationen. Um dies zu verwalten, stellt Android ein Tag in strings.xml bereit. Android unterstützt Tags für null, eins, zwei, wenige, viele und andere. Im Folgenden finden Sie Beispiele für Sprachen, in denen die einzelnen Tags verwendet werden:
- Im Arabischen wird eine spezielle grammatikalische Übereinstimmung für Null verwendet.
- Im Russischen wird jede Zahl, die auf "1" endet, anders behandelt, es sei denn, sie endet mit "11".
- Walisisch verwendet eine deutliche Pluralisierung, wenn es zwei von etwas gibt.
- Sprachen wie Tschechisch und Maltesisch unterscheiden zwischen kleinen und großen Zahlen.
- Das Chinesische macht keinen Unterschied.
So rufen Sie die pluralisierte Zeichenfolge in Kotlin ab und formatieren sie:
val itemCount = 3
val Nachricht = resources.getQuantityString(R.plurals.item_count, itemCount, itemCount)
In diesem Code wird R.plurals.item_count ist die Plural-Ressourcen-ID. Die erste itemCount wählt die Pluralzeichenfolge basierend auf den Pluralregeln des Gebietsschemas des Geräts aus, und der zweite itemCount ersetzt den Platzhalter%d.
Hier sind zum Beispiel die Ausgaben für Englisch:
- Für itemCount = 1: "1 Artikel"
- Für itemCount = 3: "3 Artikel"
-
Verwenden von Platzhaltern für dynamische Werte
Apps zeigen oft personalisierte oder dynamische Inhalte an, z. B. den Namen eines Benutzers oder die Anzahl der Benachrichtigungen, die er hat. Anstatt diesen Inhalt fest zu codieren, können Sie Platzhalter in Ihren Zeichenfolgen wie folgt verwenden:
<resources>
<string name="welcome_message">Willkommen, %1$s! Sie haben %2$d neue Nachrichten.</string>
</resources>
Und so funktioniert es:
- %1$s ist ein Platzhalter für eine Zeichenkette (z. B. einen Namen).
- %2$d ist ein Platzhalter für eine Zahl (z. B. die Anzahl der Nachrichten).
Wenn die App ausgeführt wird, werden diese Platzhalter dynamisch durch Werte ersetzt, die vom Benutzer und seinen dynamischen Daten eingegeben werden.
-
Kontextbezogene Hinweise hinzufügen
Übersetzer wissen nicht immer, wie eine Zeichenfolge in Ihrer App verwendet wird. Beispielsweise könnte ein Wort wie „Menü“ eine Dropdown-Liste, die Speisekarte eines Restaurants oder eine Einstellungsseite bedeuten. Um Verwirrung zu vermeiden, können Sie Kommentare direkt in Ihre strings.xml einfügen:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- This string is used as a label for the navigation menu →
<string name="menu_label">Menu</string>
<!-- This string is used for the settings button in the app →
<string name="settings_label">Settings</string>
</resources>
Diese Notizen teilen dem Übersetzer mit, dass sich das Wort "Menü" auf eine Navigationsfunktion in der App und nicht auf eine Restaurantkarte bezieht.
Testen der Lokalisierung in Android
Das Testen Ihrer lokalisierten Android-App ist entscheidend, um sicherzustellen, dass sie in verschiedenen Sprachen und Regionen funktioniert. Durch das Testen auf Emulatoren und echten Geräten können Sie Probleme erkennen und eine App bereitstellen, die sich für Benutzer weltweit natürlich und funktional anfühlt.
Warum auf echten Geräten testen?
Echte Geräte bieten die beste Simulation der Interaktion von Benutzern mit Ihrer App. Sie zeigen Ihnen, wie übersetzter Text auf einem tatsächlichen Telefonbildschirm aussieht – ob er zu lang oder abgeschnitten ist.
Warum mit Emulatoren testen?
Emulatoren sind eine praktische Möglichkeit, Ihre App in zahlreichen Konfigurationen zu testen. Sie ermöglichen es Ihnen, schnell zwischen Sprachen und Regionen zu wechseln, um Übersetzungen, Layoutanpassungen und das Verhalten der Benutzeroberfläche zu überprüfen.
Durch die Kombination beider Methoden können Sie eine optimale Funktionalität und Benutzererfahrung in mehreren Sprachen und Gebietsschemas aufrechterhalten.
So verwenden Sie Smartling zur Android-Lokalisierung
Smartling reduziert die Komplexität der Android-Lokalisierung. Mit KI-gestützten Tools, nahtlosen Android XML-Dateiintegrationen und einem Team aus erfahrenen Übersetzern bietet Smartling mehrere Dienste, um den gesamten Übersetzungsprozess von Anfang bis Ende zu optimieren und manuelle Arbeitsabläufe zu automatisieren.
Ihr Unternehmen kann die Automatisierungssysteme und datengesteuerten Erkenntnisse von Smartling nutzen, um schneller zu lokalisieren und die Markenkonsistenz auf den globalen Märkten zu wahren, Ihre Wettbewerber zu übertreffen und gleichzeitig ein unvergleichliches Benutzererlebnis zu bieten.
Sind Sie bereit, intelligenter zu lokalisieren, nicht schwieriger? Laden Sie unser kostenloses E-Book "10 Strategien zur Steigerung der Übersetzungseffizienz" herunter. Sie erfahren, wie Sie die Geschwindigkeit, Qualität und Kosten von Übersetzungen mit umsetzbaren Strategien und Beispielen aus der Praxis verbessern können.
Wenn Sie mit Android-Nutzern aus verschiedenen Ländern und Kulturen in Kontakt treten möchten, müssen Sie Ihre App so lokalisieren, dass sie mehrere Sprachen unterstützt. Dieser Prozess beginnt mit der Android-Internationalisierung (i18n), die den Grundstein für eine nahtlose Lokalisierung legt.
Wenn Sie Ihre Android-App internationalisieren, müssen Sie sie so entwerfen, dass sie mehrere Sprachen unterstützt, ohne dass technische Änderungen erforderlich sind. Dadurch wird sich Ihre App für Benutzer aus einer anderen Region oder Kultur vertraut anfühlen, was die Benutzerfreundlichkeit erhöht und die Tür zu neuen Märkten öffnet. Der Vorgang muss nur einmal durchgeführt werden, was Ihnen bei jeder weiteren Lokalisierung Zeit und Geld spart.
Diese Schritt-für-Schritt-Anleitung führt Sie durch den Prozess der Internationalisierung und Lokalisierung Ihrer Android-App. Sie erfahren, wie Sie Ihre App vorbereiten, mit dynamischen Inhalten umgehen und sie in verschiedenen Sprachen und Gebietsschemas testen.
So bereiten Sie sich auf die Lokalisierung von Android-Apps vor
Mit der Internationalisierung wird Ihre Android-App auf die Lokalisierung vorbereitet. Dieser Prozess schafft eine solide Grundlage innerhalb von Android Studio, um sicherzustellen, dass Ihre App mehrere Sprachen und Regionen unterstützt. So legen Sie los:
-
Android Studio installieren
Beginnen Sie mit dem Herunterladen und Installieren von Android Studio. Android Studio ist die offizielle Entwicklungsumgebung für Android und bietet alles, was Sie zum Internationalisieren, Lokalisieren und Testen Ihrer App benötigen.
-
Erstellen eines neuen Android-Projekts
Öffnen Sie Android Studio und erstellen Sie ein neues Projekt. Die Vorlage "Leere Aktivität" bietet einen einfachen Ausgangspunkt.
Konfigurieren Sie dann Ihre Projekteinstellungen wie folgt:
- Name: Geben Sie Ihren App-Namen ein (z. B. "LocalizedApp").
- Name des Pakets: Verwenden Sie einen eindeutigen Bezeichner wie "com.example.localizedappi18n".
- Sprache: Wählen Sie Kotlin (empfohlen) oder Java aus.
- Mindest-SDK: Legen Sie die niedrigste Android-Version fest, die Ihre App unterstützt.
Bestätigen Sie dann Ihre Auswahl, um die Projektstruktur zu generieren.
-
Hinzufügen von UI-Elementen mit flexiblen Layouts
Achten Sie beim Hinzufügen von UI-Elementen auf die Lokalisierung. Sprachen wie Deutsch benötigen oft mehr Platz als Englisch, während chinesische Schriftzeichen kompakter sind. Vermeiden Sie es, feste Breiten für Textelemente festzulegen, da längere Übersetzungen in einigen Sprachen die Containergröße überschreiten können.
Erwägen Sie die Verwendung von Tools wie ConstraintLayout, damit UI-Elemente Position und Größe basierend auf der Länge des übersetzten Texts dynamisch anpassen können.
Hier ist ein XML-Beispiel:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/welcome_message"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
Hier wird die TextView verwendet, um eine Zeichenfolgenressource (z. B. eine Willkommensnachricht) anzuzeigen. Durch die Verwendung von wrap_content für die Breite wird die Größe des Elements automatisch an die Länge des übersetzten Textes angepasst, anstatt durch eine feste Dimension eingeschränkt zu werden. Darüber hinaus sorgt ConstraintLayout dafür, dass die TextView unabhängig von der Textlänge oder Bildschirmgröße ordnungsgemäß auf dem Bildschirm positioniert ist.
Wenn Sie von Anfang an ein flexibles Layout erstellen, sieht Ihre App unabhängig von der Sprache, in die sie lokalisiert wird, großartig aus.
-
Bereiten Sie sich auf die Lokalisierung mit ausgelagertem Text vor
Der letzte Schritt zum Vorbereiten Ihrer Android-App für die Lokalisierung erfordert, dass Sie den gesamten benutzerseitigen Text in einer separaten Ressourcendatei speichern, anstatt ihn fest zu codieren. Mit einer zentralisierten Ressourcendatei wie strings.xml Sie müssen Text, der über den Code verstreut ist, nicht manuell ersetzen.
So geht's:
- Suchen Sie den Ordner „res/values/“ in Ihrem Projektverzeichnis.
- Öffnen Sie den "strings.xml" Datei (wenn sie nicht vorhanden ist, erstellen Sie eine).
- Fügen Sie der Datei Ihren Text mit einem Name-Wert-Paar hinzu:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="welcome_message">Willkommen in meiner App!</string>
</resources>
Kehren Sie zur activity_main.xml Datei zurück, und aktualisieren Sie die TextView, um auf die Zeichenfolgenressource zu verweisen:
<TextView
android:text="@string/welcome_message"
Durch die Organisation Ihres Projekts auf diese Weise wird Ihre Android-App internationalisiert, sodass Sie den Inhalt, der in eine andere Sprache lokalisiert werden muss, problemlos abgrenzen können.
So lokalisieren Sie eine Android-App in 4 Schritten
Nachdem Sie Ihre Android-App vorbereitet haben, ist es an der Zeit, den Lokalisierungsprozess Schritt für Schritt zu durchlaufen, vom Einrichten sprachspezifischer Ressourcen bis hin zum dynamischen Ändern des Gebietsschemas der Android-App.
-
Erweitern Sie strings.xml für die Lokalisierung
In der Vorbereitungsphase haben Sie eine strings.xml Datei erstellt, um den gesamten Text in Ihrer Android-App zu verwalten. Jetzt ist es an der Zeit, dies zu erweitern, indem Sie sprachspezifische Versionen der Datei für jede unterstützte Sprache erstellen.
Erstellen Sie zunächst neue Ordner für jede Zielsprache im res-Verzeichnis Ihres Projekts. Verwenden Sie einen Ordnernamen, der den entsprechenden Sprachcode enthält (z. B. "res/values-es/" für Spanisch und "res/values-fr/" für Französisch).
Kopieren Sie Ihre Standard-strings.xml-Datei in jeden Ordner. Übersetzen Sie dann den Text für jede Sprache manuell. In der englischen Standarddatei könnte z. B. Folgendes lauten:
<TextView
<string name="hello_world">Hello, World!string>
Die spanische Version in "values-es/strings.xml" Wäre:
<TextView
<string name="hello_world">¡Hola, Mundo!string>
Nachdem Sie diese sprachspezifischen XML-Dateien erstellt haben, wählt Android automatisch die richtige Version strings.xml basierend auf den Spracheinstellungen des Benutzers aus.
-
Umgang mit Pluralformen für genaue Übersetzungen
Pluralformen sind knifflig, weil sie in jeder Sprache anders gehandhabt werden. Zum Beispiel ist "one item" im Englischen Singular, aber jede zweite Zahl ist Plural, egal ob "null items" oder "zweihundert items". In Sprachen wie Russisch, Walisisch und Tschechisch gelten jedoch spezifischere Regeln für den Plural, der auf der Zahl basiert.
So definieren Sie pluralisierte Zeichenfolgen in strings.xml für Englisch:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<plurals name="item_count">
<item quantity="one">%d item</item>
<item quantity="other">%d Artikel</item>
</plurals>
</resources>
Dies entspricht den folgenden Mengenwerten:
- Eins: Wird für Singularformen (z. B. ein Element) verwendet.
- Andere: Wird für Pluralformen verwendet (z. B. null Elemente, zwei Elemente, drei Elemente).
Im Englischen sind nur "one" und "other" erforderlich, aber andere Sprachen haben mehr Klassifikationen. Um dies zu verwalten, stellt Android ein Tag in strings.xml bereit. Android unterstützt Tags für null, eins, zwei, wenige, viele und andere. Im Folgenden finden Sie Beispiele für Sprachen, in denen die einzelnen Tags verwendet werden:
- Im Arabischen wird eine spezielle grammatikalische Übereinstimmung für Null verwendet.
- Im Russischen wird jede Zahl, die auf "1" endet, anders behandelt, es sei denn, sie endet mit "11".
- Walisisch verwendet eine deutliche Pluralisierung, wenn es zwei von etwas gibt.
- Sprachen wie Tschechisch und Maltesisch unterscheiden zwischen kleinen und großen Zahlen.
- Das Chinesische macht keinen Unterschied.
So rufen Sie die pluralisierte Zeichenfolge in Kotlin ab und formatieren sie:
val itemCount = 3
val Nachricht = resources.getQuantityString(R.plurals.item_count, itemCount, itemCount)
In diesem Code wird R.plurals.item_count ist die Plural-Ressourcen-ID. Die erste itemCount wählt die Pluralzeichenfolge basierend auf den Pluralregeln des Gebietsschemas des Geräts aus, und der zweite itemCount ersetzt den Platzhalter%d.
Hier sind zum Beispiel die Ausgaben für Englisch:
- Für itemCount = 1: "1 Artikel"
- Für itemCount = 3: "3 Artikel"
-
Verwenden von Platzhaltern für dynamische Werte
Apps zeigen oft personalisierte oder dynamische Inhalte an, z. B. den Namen eines Benutzers oder die Anzahl der Benachrichtigungen, die er hat. Anstatt diesen Inhalt fest zu codieren, können Sie Platzhalter in Ihren Zeichenfolgen wie folgt verwenden:
<resources>
<string name="welcome_message">Willkommen, %1$s! Sie haben %2$d neue Nachrichten.</string>
</resources>
Und so funktioniert es:
- %1$s ist ein Platzhalter für eine Zeichenkette (z. B. einen Namen).
- %2$d ist ein Platzhalter für eine Zahl (z. B. die Anzahl der Nachrichten).
Wenn die App ausgeführt wird, werden diese Platzhalter dynamisch durch Werte ersetzt, die vom Benutzer und seinen dynamischen Daten eingegeben werden.
-
Kontextbezogene Hinweise hinzufügen
Übersetzer wissen nicht immer, wie eine Zeichenfolge in Ihrer App verwendet wird. Beispielsweise könnte ein Wort wie „Menü“ eine Dropdown-Liste, die Speisekarte eines Restaurants oder eine Einstellungsseite bedeuten. Um Verwirrung zu vermeiden, können Sie Kommentare direkt in Ihre strings.xml einfügen:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- This string is used as a label for the navigation menu →
<string name="menu_label">Menu</string>
<!-- This string is used for the settings button in the app →
<string name="settings_label">Settings</string>
</resources>
Diese Notizen teilen dem Übersetzer mit, dass sich das Wort "Menü" auf eine Navigationsfunktion in der App und nicht auf eine Restaurantkarte bezieht.
Testen der Lokalisierung in Android
Das Testen Ihrer lokalisierten Android-App ist entscheidend, um sicherzustellen, dass sie in verschiedenen Sprachen und Regionen funktioniert. Durch das Testen auf Emulatoren und echten Geräten können Sie Probleme erkennen und eine App bereitstellen, die sich für Benutzer weltweit natürlich und funktional anfühlt.
Warum auf echten Geräten testen?
Echte Geräte bieten die beste Simulation der Interaktion von Benutzern mit Ihrer App. Sie zeigen Ihnen, wie übersetzter Text auf einem tatsächlichen Telefonbildschirm aussieht – ob er zu lang oder abgeschnitten ist.
Warum mit Emulatoren testen?
Emulatoren sind eine praktische Möglichkeit, Ihre App in zahlreichen Konfigurationen zu testen. Sie ermöglichen es Ihnen, schnell zwischen Sprachen und Regionen zu wechseln, um Übersetzungen, Layoutanpassungen und das Verhalten der Benutzeroberfläche zu überprüfen.
Durch die Kombination beider Methoden können Sie eine optimale Funktionalität und Benutzererfahrung in mehreren Sprachen und Gebietsschemas aufrechterhalten.
So verwenden Sie Smartling zur Android-Lokalisierung
Smartling reduziert die Komplexität der Android-Lokalisierung. Mit KI-gestützten Tools, nahtlosen Android XML-Dateiintegrationen und einem Team aus erfahrenen Übersetzern bietet Smartling mehrere Dienste, um den gesamten Übersetzungsprozess von Anfang bis Ende zu optimieren und manuelle Arbeitsabläufe zu automatisieren.
Ihr Unternehmen kann die Automatisierungssysteme und datengesteuerten Erkenntnisse von Smartling nutzen, um schneller zu lokalisieren und die Markenkonsistenz auf den globalen Märkten zu wahren, Ihre Wettbewerber zu übertreffen und gleichzeitig ein unvergleichliches Benutzererlebnis zu bieten.
Sind Sie bereit, intelligenter zu lokalisieren, nicht schwieriger? Laden Sie unser kostenloses E-Book "10 Strategien zur Steigerung der Übersetzungseffizienz" herunter. Sie erfahren, wie Sie die Geschwindigkeit, Qualität und Kosten von Übersetzungen mit umsetzbaren Strategien und Beispielen aus der Praxis verbessern können.
Wenn Sie mit Android-Nutzern aus verschiedenen Ländern und Kulturen in Kontakt treten möchten, müssen Sie Ihre App so lokalisieren, dass sie mehrere Sprachen unterstützt. Dieser Prozess beginnt mit der Android-Internationalisierung (i18n), die den Grundstein für eine nahtlose Lokalisierung legt.
Wenn Sie Ihre Android-App internationalisieren, müssen Sie sie so entwerfen, dass sie mehrere Sprachen unterstützt, ohne dass technische Änderungen erforderlich sind. Dadurch wird sich Ihre App für Benutzer aus einer anderen Region oder Kultur vertraut anfühlen, was die Benutzerfreundlichkeit erhöht und die Tür zu neuen Märkten öffnet. Der Vorgang muss nur einmal durchgeführt werden, was Ihnen bei jeder weiteren Lokalisierung Zeit und Geld spart.
Diese Schritt-für-Schritt-Anleitung führt Sie durch den Prozess der Internationalisierung und Lokalisierung Ihrer Android-App. Sie erfahren, wie Sie Ihre App vorbereiten, mit dynamischen Inhalten umgehen und sie in verschiedenen Sprachen und Gebietsschemas testen.
So bereiten Sie sich auf die Lokalisierung von Android-Apps vor
Mit der Internationalisierung wird Ihre Android-App auf die Lokalisierung vorbereitet. Dieser Prozess schafft eine solide Grundlage innerhalb von Android Studio, um sicherzustellen, dass Ihre App mehrere Sprachen und Regionen unterstützt. So legen Sie los:
-
Android Studio installieren
Beginnen Sie mit dem Herunterladen und Installieren von Android Studio. Android Studio ist die offizielle Entwicklungsumgebung für Android und bietet alles, was Sie zum Internationalisieren, Lokalisieren und Testen Ihrer App benötigen.
-
Erstellen eines neuen Android-Projekts
Öffnen Sie Android Studio und erstellen Sie ein neues Projekt. Die Vorlage "Leere Aktivität" bietet einen einfachen Ausgangspunkt.
Konfigurieren Sie dann Ihre Projekteinstellungen wie folgt:
- Name: Geben Sie Ihren App-Namen ein (z. B. "LocalizedApp").
- Name des Pakets: Verwenden Sie einen eindeutigen Bezeichner wie "com.example.localizedappi18n".
- Sprache: Wählen Sie Kotlin (empfohlen) oder Java aus.
- Mindest-SDK: Legen Sie die niedrigste Android-Version fest, die Ihre App unterstützt.
Bestätigen Sie dann Ihre Auswahl, um die Projektstruktur zu generieren.
-
Hinzufügen von UI-Elementen mit flexiblen Layouts
Achten Sie beim Hinzufügen von UI-Elementen auf die Lokalisierung. Sprachen wie Deutsch benötigen oft mehr Platz als Englisch, während chinesische Schriftzeichen kompakter sind. Vermeiden Sie es, feste Breiten für Textelemente festzulegen, da längere Übersetzungen in einigen Sprachen die Containergröße überschreiten können.
Erwägen Sie die Verwendung von Tools wie ConstraintLayout, damit UI-Elemente Position und Größe basierend auf der Länge des übersetzten Texts dynamisch anpassen können.
Hier ist ein XML-Beispiel:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/welcome_message"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
Hier wird die TextView verwendet, um eine Zeichenfolgenressource (z. B. eine Willkommensnachricht) anzuzeigen. Durch die Verwendung von wrap_content für die Breite wird die Größe des Elements automatisch an die Länge des übersetzten Textes angepasst, anstatt durch eine feste Dimension eingeschränkt zu werden. Darüber hinaus sorgt ConstraintLayout dafür, dass die TextView unabhängig von der Textlänge oder Bildschirmgröße ordnungsgemäß auf dem Bildschirm positioniert ist.
Wenn Sie von Anfang an ein flexibles Layout erstellen, sieht Ihre App unabhängig von der Sprache, in die sie lokalisiert wird, großartig aus.
-
Bereiten Sie sich auf die Lokalisierung mit ausgelagertem Text vor
Der letzte Schritt zum Vorbereiten Ihrer Android-App für die Lokalisierung erfordert, dass Sie den gesamten benutzerseitigen Text in einer separaten Ressourcendatei speichern, anstatt ihn fest zu codieren. Mit einer zentralisierten Ressourcendatei wie strings.xml Sie müssen Text, der über den Code verstreut ist, nicht manuell ersetzen.
So geht's:
- Suchen Sie den Ordner „res/values/“ in Ihrem Projektverzeichnis.
- Öffnen Sie den "strings.xml" Datei (wenn sie nicht vorhanden ist, erstellen Sie eine).
- Fügen Sie der Datei Ihren Text mit einem Name-Wert-Paar hinzu:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="welcome_message">Willkommen in meiner App!</string>
</resources>
Kehren Sie zur activity_main.xml Datei zurück, und aktualisieren Sie die TextView, um auf die Zeichenfolgenressource zu verweisen:
<TextView
android:text="@string/welcome_message"
Durch die Organisation Ihres Projekts auf diese Weise wird Ihre Android-App internationalisiert, sodass Sie den Inhalt, der in eine andere Sprache lokalisiert werden muss, problemlos abgrenzen können.
So lokalisieren Sie eine Android-App in 4 Schritten
Nachdem Sie Ihre Android-App vorbereitet haben, ist es an der Zeit, den Lokalisierungsprozess Schritt für Schritt zu durchlaufen, vom Einrichten sprachspezifischer Ressourcen bis hin zum dynamischen Ändern des Gebietsschemas der Android-App.
-
Erweitern Sie strings.xml für die Lokalisierung
In der Vorbereitungsphase haben Sie eine strings.xml Datei erstellt, um den gesamten Text in Ihrer Android-App zu verwalten. Jetzt ist es an der Zeit, dies zu erweitern, indem Sie sprachspezifische Versionen der Datei für jede unterstützte Sprache erstellen.
Erstellen Sie zunächst neue Ordner für jede Zielsprache im res-Verzeichnis Ihres Projekts. Verwenden Sie einen Ordnernamen, der den entsprechenden Sprachcode enthält (z. B. "res/values-es/" für Spanisch und "res/values-fr/" für Französisch).
Kopieren Sie Ihre Standard-strings.xml-Datei in jeden Ordner. Übersetzen Sie dann den Text für jede Sprache manuell. In der englischen Standarddatei könnte z. B. Folgendes lauten:
<TextView
<string name="hello_world">Hello, World!string>
Die spanische Version in "values-es/strings.xml" Wäre:
<TextView
<string name="hello_world">¡Hola, Mundo!string>
Nachdem Sie diese sprachspezifischen XML-Dateien erstellt haben, wählt Android automatisch die richtige Version strings.xml basierend auf den Spracheinstellungen des Benutzers aus.
-
Umgang mit Pluralformen für genaue Übersetzungen
Pluralformen sind knifflig, weil sie in jeder Sprache anders gehandhabt werden. Zum Beispiel ist "one item" im Englischen Singular, aber jede zweite Zahl ist Plural, egal ob "null items" oder "zweihundert items". In Sprachen wie Russisch, Walisisch und Tschechisch gelten jedoch spezifischere Regeln für den Plural, der auf der Zahl basiert.
So definieren Sie pluralisierte Zeichenfolgen in strings.xml für Englisch:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<plurals name="item_count">
<item quantity="one">%d item</item>
<item quantity="other">%d Artikel</item>
</plurals>
</resources>
Dies entspricht den folgenden Mengenwerten:
- Eins: Wird für Singularformen (z. B. ein Element) verwendet.
- Andere: Wird für Pluralformen verwendet (z. B. null Elemente, zwei Elemente, drei Elemente).
Im Englischen sind nur "one" und "other" erforderlich, aber andere Sprachen haben mehr Klassifikationen. Um dies zu verwalten, stellt Android ein Tag in strings.xml bereit. Android unterstützt Tags für null, eins, zwei, wenige, viele und andere. Im Folgenden finden Sie Beispiele für Sprachen, in denen die einzelnen Tags verwendet werden:
- Im Arabischen wird eine spezielle grammatikalische Übereinstimmung für Null verwendet.
- Im Russischen wird jede Zahl, die auf "1" endet, anders behandelt, es sei denn, sie endet mit "11".
- Walisisch verwendet eine deutliche Pluralisierung, wenn es zwei von etwas gibt.
- Sprachen wie Tschechisch und Maltesisch unterscheiden zwischen kleinen und großen Zahlen.
- Das Chinesische macht keinen Unterschied.
So rufen Sie die pluralisierte Zeichenfolge in Kotlin ab und formatieren sie:
val itemCount = 3
val Nachricht = resources.getQuantityString(R.plurals.item_count, itemCount, itemCount)
In diesem Code wird R.plurals.item_count ist die Plural-Ressourcen-ID. Die erste itemCount wählt die Pluralzeichenfolge basierend auf den Pluralregeln des Gebietsschemas des Geräts aus, und der zweite itemCount ersetzt den Platzhalter%d.
Hier sind zum Beispiel die Ausgaben für Englisch:
- Für itemCount = 1: "1 Artikel"
- Für itemCount = 3: "3 Artikel"
-
Verwenden von Platzhaltern für dynamische Werte
Apps zeigen oft personalisierte oder dynamische Inhalte an, z. B. den Namen eines Benutzers oder die Anzahl der Benachrichtigungen, die er hat. Anstatt diesen Inhalt fest zu codieren, können Sie Platzhalter in Ihren Zeichenfolgen wie folgt verwenden:
<resources>
<string name="welcome_message">Willkommen, %1$s! Sie haben %2$d neue Nachrichten.</string>
</resources>
Und so funktioniert es:
- %1$s ist ein Platzhalter für eine Zeichenkette (z. B. einen Namen).
- %2$d ist ein Platzhalter für eine Zahl (z. B. die Anzahl der Nachrichten).
Wenn die App ausgeführt wird, werden diese Platzhalter dynamisch durch Werte ersetzt, die vom Benutzer und seinen dynamischen Daten eingegeben werden.
-
Kontextbezogene Hinweise hinzufügen
Übersetzer wissen nicht immer, wie eine Zeichenfolge in Ihrer App verwendet wird. Beispielsweise könnte ein Wort wie „Menü“ eine Dropdown-Liste, die Speisekarte eines Restaurants oder eine Einstellungsseite bedeuten. Um Verwirrung zu vermeiden, können Sie Kommentare direkt in Ihre strings.xml einfügen:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- This string is used as a label for the navigation menu →
<string name="menu_label">Menu</string>
<!-- This string is used for the settings button in the app →
<string name="settings_label">Settings</string>
</resources>
Diese Notizen teilen dem Übersetzer mit, dass sich das Wort "Menü" auf eine Navigationsfunktion in der App und nicht auf eine Restaurantkarte bezieht.
Testen der Lokalisierung in Android
Das Testen Ihrer lokalisierten Android-App ist entscheidend, um sicherzustellen, dass sie in verschiedenen Sprachen und Regionen funktioniert. Durch das Testen auf Emulatoren und echten Geräten können Sie Probleme erkennen und eine App bereitstellen, die sich für Benutzer weltweit natürlich und funktional anfühlt.
Warum auf echten Geräten testen?
Echte Geräte bieten die beste Simulation der Interaktion von Benutzern mit Ihrer App. Sie zeigen Ihnen, wie übersetzter Text auf einem tatsächlichen Telefonbildschirm aussieht – ob er zu lang oder abgeschnitten ist.
Warum mit Emulatoren testen?
Emulatoren sind eine praktische Möglichkeit, Ihre App in zahlreichen Konfigurationen zu testen. Sie ermöglichen es Ihnen, schnell zwischen Sprachen und Regionen zu wechseln, um Übersetzungen, Layoutanpassungen und das Verhalten der Benutzeroberfläche zu überprüfen.
Durch die Kombination beider Methoden können Sie eine optimale Funktionalität und Benutzererfahrung in mehreren Sprachen und Gebietsschemas aufrechterhalten.
So verwenden Sie Smartling zur Android-Lokalisierung
Smartling reduziert die Komplexität der Android-Lokalisierung. Mit KI-gestützten Tools, nahtlosen Android XML-Dateiintegrationen und einem Team aus erfahrenen Übersetzern bietet Smartling mehrere Dienste, um den gesamten Übersetzungsprozess von Anfang bis Ende zu optimieren und manuelle Arbeitsabläufe zu automatisieren.
Ihr Unternehmen kann die Automatisierungssysteme und datengesteuerten Erkenntnisse von Smartling nutzen, um schneller zu lokalisieren und die Markenkonsistenz auf den globalen Märkten zu wahren, Ihre Wettbewerber zu übertreffen und gleichzeitig ein unvergleichliches Benutzererlebnis zu bieten.
Sind Sie bereit, intelligenter zu lokalisieren, nicht schwieriger? Laden Sie unser kostenloses E-Book "10 Strategien zur Steigerung der Übersetzungseffizienz" herunter. Sie erfahren, wie Sie die Geschwindigkeit, Qualität und Kosten von Übersetzungen mit umsetzbaren Strategien und Beispielen aus der Praxis verbessern können.
Schilder: Websites und Webanwendungen Blog