Android läuft auf vielen Geräten in vielen Regionen. Um möglichst viele Nutzer zu erreichen, sollten Sie verarbeitet Text, Audiodateien, Zahlen, Währung für die Länder, in denen Ihre App verwendet wird.
Auf dieser Seite werden Best Practices für die Lokalisierung von Android beschrieben. Apps.
Sie müssen über praktische Kenntnisse in der Programmierung mit Kotlin oder Java verfügen. Sprache sprechen und die Laden von Android-Ressourcen Elemente der Benutzeroberfläche in XML deklarieren, Entwicklungsaspekte wie die Aktivitätslebenszyklus, und die allgemeinen Prinzipien der Internationalisierung und Lokalisierung.
Es empfiehlt sich, das Android-Ressourcen-Framework zu verwenden, um Aspekte deiner App so weit wie möglich von den Hauptfunktionen der App aussortiert.
- Fügen Sie den Großteil oder alle Inhalte der Benutzeroberfläche Ihrer App Ressourcendateien, wie auf dieser Seite und in den App-Ressourcen – Übersicht
- Das Verhalten der Benutzeroberfläche hingegen Kotlin- oder Java-basierten Code schreiben. Wenn Nutzende Daten eingeben, die unterschiedlich formatiert oder sortiert werden, verwenden Sie Kotlin oder Java (Programmiersprache), um die Daten programmatisch zu verarbeiten. Diese Seite enthält erfahren Sie, wie Sie Kotlin- oder Java-basierten Code lokalisieren.
Eine kurze Anleitung zur Lokalisierung von Strings in Ihrer App finden Sie unter Unterstützung verschiedener Sprachen und Kulturen.
Übersicht: Ressourcenwechsel in Android
Zu den Ressourcen gehören Textzeichenfolgen, Layouts, Töne, Grafiken und andere statische Daten, die Ihre Android-App benötigt. Eine App kann mehrere an Ressourcen, die jeweils für eine andere Gerätekonfiguration angepasst sind. Wenn ein Nutzer führt die App aus und Android wählt die Ressourcen automatisch aus und lädt sie die am besten zum Gerät passen.
Auf dieser Seite geht es um Lokalisierung und Gebietsschema. Für eine vollständige Beschreibung und alle Konfigurationsarten, die Sie z. B. Bildschirmausrichtung oder Touchscreentyp, Bereitstellen Alternativressourcen.
Wenn Sie Ihre Anwendung schreiben, erstellen Sie standardmäßige und alternative Ressourcen
für Ihre App. Wenn Nutzer deine App ausführen,
wählt die zu ladenden Ressourcen basierend auf der Sprache des Geräts aus.
Um Ressourcen zu erstellen, platzieren Sie Dateien in
speziell benannte Unterverzeichnisse des Verzeichnisses res/
des Projekts.
Warum Standardressourcen wichtig sind
Wenn die App in einer nicht angegebenen Sprache ausgeführt wird
verwendet, lädt Android die Standardzeichenfolgen aus
res/values/strings.xml
Wenn diese Standarddatei fehlt oder
wenn ein String fehlt, den die App benötigt, wird sie nicht ausgeführt.
und es wird ein Fehler angezeigt. Das folgende Beispiel zeigt, was passieren kann, wenn der
Standardtextdatei ist unvollständig.
Beispiel:
Der Kotlin- oder Java-basierte Code einer App bezieht sich auf nur zwei Strings, text_a
und text_b
. Die App enthält eine lokalisierte Ressourcendatei.
(res/values-en/strings.xml
), die text_a
und
text_b
auf Englisch. Die App enthält auch eine Standard-
Ressourcendatei (res/values/strings.xml
), die ein
Definition für text_a
, aber nicht für text_b
.
- Wenn diese App auf einem Gerät mit der Spracheinstellung Englisch gestartet wird,
kann die App problemlos ausgeführt werden,
res/values-en/strings.xml
enthält beide erforderlichen Texte Zeichenfolgen. - Wenn diese App jedoch auf einem Gerät gestartet wird, in einer anderen Sprache als Englisch angezeigt wird, wird eine Fehlermeldung Schaltfläche. Die App wird nicht geladen.
Achten Sie darauf, dass res/values/strings.xml
Datei existiert und jede benötigte Zeichenfolge definiert. Diese Situation gilt für
alle Ressourcentypen und nicht nur Strings: Sie müssen eine Reihe von
Ressourcendateien, die alle Ressourcen
enthalten, die Ihre App aufruft,
wie Layouts, Drawables oder Animationen. Informationen zu Tests finden Sie in der
Bereich Test für Standardressourcen
Ressourcen zur Lokalisierung nutzen
In diesem Abschnitt wird erläutert, wie Standardressourcen sowie alternative Ressourcen erstellt werden. Außerdem wird erläutert, wie den Ressourcen Vorrang eingeräumt wird und wie Sie auf Ihre Ressourcen im Code.
Standardressourcen erstellen
Füge den Standardtext der App in res/values/strings.xml
ein. Verwenden Sie für diese Zeichenfolgen die Methode
Standardsprache. Das ist die Sprache, die Sie bei der
App-Nutzenden zu sprechen.
Der Standardressourcensatz enthält auch alle Standard-Drawables und -Layouts und kann andere Arten von Ressourcen wie Animationen enthalten. Diese Ressourcen suchen Sie in den folgenden Verzeichnissen:
res/drawable/
: erforderliches Verzeichnis mit mindestens eine Grafikdatei für das App-Symbol bei Google Playres/layout/
: erforderliches Verzeichnis mit einer XML-Datei in der das Standardlayout definiert wird.res/anim/
: erforderlich, falls vorhandenres/anim-<qualifiers>
Ordnerres/xml/
: erforderlich, falls vorhandenres/xml-<qualifiers>
Ordnerres/raw/
: erforderlich, falls vorhandenres/raw-<qualifiers>
Ordner
Tipp:Untersuchen Sie in Ihrem Code jeden Verweis auf eine Android-Ressource. Achten Sie darauf, dass für jede Ressource eine Standardressource definiert ist. Achte außerdem darauf, dass die Standardstringdatei vollständig ist: ein localized Stringdatei kann eine Teilmenge der Strings enthalten, aber der String default wird verwendet. muss sie alle enthalten.
Alternative Ressourcen erstellen
Ein großer Teil der Lokalisierung einer App besteht darin, alternativen Text bereitzustellen. Sprachen sprechen. In einigen Fällen stellen Sie auch alternative Grafiken bereit, Sounds, Layouts und andere gebietsspezifische Ressourcen.
Eine App kann viele res/<qualifiers>/
angeben
mit unterschiedlichen Qualifier-Verzeichnissen. Um eine alternative Ressource für
verwendet werden, verwenden Sie einen Qualifizierer, der eine Sprache oder ein
Sprach-Region-Kombination. Der Name eines Ressourcenverzeichnisses muss den
mit dem in den Anleitungen
Bereitstellen
alternative Ressourcen. Andernfalls kann die App nicht kompiliert werden.
Beispiel:
Angenommen, die Standardsprache Ihrer App ist Englisch und
möchten Sie den gesamten Text Ihrer App ins Französische
mit Ausnahme des App-Titels
Japanisch. In diesem Fall erstellen Sie drei strings.xml
-Dateien, die jeweils in einem gebietsspezifischen Ressourcenverzeichnis gespeichert sind:
res/values/strings.xml
Enthält englischen Text für alle Strings, die die App verwendet, einschließlich Text für eine Zeichenfolge mit dem Namentitle
.res/values-fr/strings.xml
Sie müssen französischen Text für alle Strings enthalten, einschließlichtitle
.res/values-ja/strings.xml
Japanischen Text für alle Strings außer enthaltentitle
.
Wenn sich Ihr Kotlin- oder Java-basierter Code auf R.string.title
bezieht, gilt Folgendes:
während der Laufzeit:
- Ist auf dem Gerät eine andere Sprache als Französisch eingestellt, wird Android
title
aus der Dateires/values/strings.xml
. - Wenn auf dem Gerät Französisch festgelegt ist, lädt Android
title
aus demres/values-fr/strings.xml
-Datei.
Ist das Gerät auf Japanisch eingestellt, sucht Android nach
title
in der Datei res/values-ja/strings.xml
. Aber
da keine solche Zeichenfolge in der Datei enthalten ist, greift Android auf die
und lädt die title
in englischer Sprache aus dem
res/values/strings.xml
-Datei.
Welche Ressourcen haben Vorrang?
Wenn mehrere Ressourcendateien mit der Konfiguration eines Geräts übereinstimmen, folgt Android einer für die Auswahl der zu verwendenden Datei. Unter den Kennzeichnern, die in einem Ressourcenverzeichnis angegeben ist, verwendet die Sprache fast immer Vorrang.
Beispiel:
Angenommen, eine App enthält Standardgrafiken und zwei weitere Grafiken, die jeweils für unterschiedliche Geräte optimiert sind:
res/drawable/
Enthält Standardgrafiken.res/drawable-small-land-stylus/
Enthält Grafiken, die für die Verwendung mit Geräten optimiert sind, die Eingaben von einem Gerät erwarten und hat einen QVGA-Bildschirm mit niedriger Dichte im Querformat.res/drawable-ja/
Enthält Grafiken, die für Japanisch optimiert sind.
Wenn die App auf einem Gerät läuft, das für Japanisch konfiguriert ist,
Android lädt Grafiken aus res/drawable-ja/
, auch wenn das Gerät
erwartet Eingaben von einem Eingabestift und hat eine niedrige QVGA-Dichte,
Bildschirm im Querformat.
Ausnahme:Die einzigen Kennzeichner, die Vorrang vor dem Gebietsschema im Auswahlprozess sind Mobile Country Code (MCC) und Mobilfunknetz Code (MNC).
Beispiel:
Nehmen wir an, dass folgende Situation vorliegt:
- Der App-Code ruft
R.string.text_a
auf .
- Es stehen zwei relevante Ressourcendateien zur Verfügung:
<ph type="x-smartling-placeholder">
- </ph>
res/values-mcc404/strings.xml
, einschließlichtext_a
in der Standardsprache der App, in diesem Fall Englisch.res/values-hi/strings.xml
, einschließlichtext_a
auf Hindi.
- Die App wird auf einem Gerät ausgeführt, das Folgendes hat:
Konfiguration:
<ph type="x-smartling-placeholder">
- </ph>
- Die SIM-Karte ist mit einem Mobilfunknetz in Indien (MCC 404) verbunden.
- Als Sprache ist Hindi (
hi
) eingestellt.
Android lädt text_a
aus
res/values-mcc404/strings.xml
(auf Englisch), auch wenn das Gerät
für Hindi konfiguriert ist. Das liegt daran, dass Android bei der Ressourcenauswahl
bevorzugt eine Übereinstimmung zwischen dem Kundencenter und einer Sprache.
Der Auswahlprozess ist nicht immer so einfach wie in diesen Beispielen. einen Vorschlag machen. Eine detailliertere Beschreibung des Vorgangs finden Sie unter Wie Android Ressource mit der besten Übereinstimmung. Alle Kennzeichner sind in der Tabelle unten beschrieben und nach ihrer Priorität geordnet. App-Ressourcen – Übersicht
Auf Ressourcen im Code verweisen
Im Kotlin- oder Java-basierten Code Ihrer App verweisen Sie mithilfe der Syntax auf Ressourcen.
R.resource_type.resource_name
oder
android.R.resource_type.resource_name
Weitere Informationen finden Sie unter
Auf Ihre Anwendungsressourcen zugreifen
Strings für die Lokalisierung verwalten
In diesem Abschnitt werden Best Practices für die Verwaltung von Strings im Zusammenhang mit der Lokalisierung beschrieben.
Alle Strings in Strings.xml verschieben
Wenn Sie Ihre Apps erstellen, sollten Sie keine Strings hartcodieren. Deklarieren Sie stattdessen alle Ihre
Strings als Ressourcen in einer strings.xml
-Standarddatei, sodass sich die Daten ganz einfach aktualisieren lassen.
und lokalisieren diese. Strings in der Datei strings.xml
lassen sich leicht extrahieren,
übersetzt und mit entsprechenden Qualifikationsmerkmalen wieder in Ihre App integriert,
Änderungen am kompilierten Code.
Wenn Sie Bilder mit Text generieren, geben Sie diese Zeichenfolgen auch in strings.xml
ein.
Erstellen Sie die Bilder nach der Übersetzung neu.
Android-Richtlinien für UI-Strings befolgen
Achten Sie beim Entwerfen und Entwickeln Ihrer Benutzeroberflächen genau darauf, wie mit Ihren Nutzenden sprechen. Verwenden Sie im Allgemeinen einen prägnanten Stil. die freundlich, aber kurz gehalten sind, und einen einheitlichen Stil verwenden.
Lesen und befolgen Sie die Material Design-Empfehlungen für Schreiben Stil und Wortwahl. Dadurch wirken Ihre Apps ausgefeilter für den Nutzer und die Nutzer verstehen Ihre auf die Benutzeroberfläche.
Verwenden Sie nach Möglichkeit immer die Android-Standardterminologie, z. B. für UI-Elemente wie App-Leiste, Optionsmenü, Systemleiste und Benachrichtigungen. Android-Begriffe verwenden korrekte und konsistente Übersetzungen erleichtern und zu einem besseren Endprodukt führen. für Nutzende zu machen.
Ausreichend Kontext für deklarierte Strings bereitstellen
Achten Sie beim Deklarieren von Strings in Ihrer strings.xml
-Datei darauf, den Kontext zu beschreiben
in dem die Zeichenfolge verwendet wird. Diese Informationen sind für den Übersetzer von unschätzbarem Wert
qualitativ hochwertigerer Übersetzungen. Außerdem können Sie damit Ihre Strings effektiver verwalten.
Hier ein Beispiel:
<!-- The action for submitting a form. This text is on a button that can fit 30 chars --> <string name="login_submit_button">Sign in</string>
Stellen Sie Kontextinformationen wie die folgenden zur Verfügung:
- Wofür ist dieser String gedacht? Wann und wo werden sie den Nutzenden präsentiert?
- Wo befindet sich das im Layout? Zum Beispiel sind Übersetzungen in als in Textfeldern.
Teile einer Nachricht markieren, die nicht übersetzt werden sollen
Häufig enthalten Strings Text, der nicht in andere Sprachen übersetzt werden kann. Häufig Beispiele sind ein Code-Snippet, ein Platzhalter für einen Wert, ein Sonderzeichen oder ein Name. Während Sie Bereiten Sie Ihre Zeichenfolgen für die Übersetzung vor. Suchen und markieren Sie Text, der unverändert bleiben muss, damit der Übersetzer sie nicht ändert.
Um Text zu markieren, der nicht übersetzt werden soll, verwenden Sie ein <xliff:g>
Platzhalter-Tag. Hier ist ein Beispiel-Tag, das darauf hinweist, dass der Text "%1$s"
nicht
geändert werden, damit die Nachricht nicht unterbrochen wird:
<string name="countdown"> <xliff:g id="time" example="5 days">%1$s</xliff:g> until holiday </string>
Fügen Sie bei der Deklaration eines Platzhalter-Tags ein ID-Attribut hinzu, Platzhalter ist. Wenn Ihre App den Platzhalterwert später ersetzt, müssen Sie einen Beispielattribut, um die erwartete Verwendung zu verdeutlichen.
Weitere Beispiele für Platzhalter-Tags:
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <!-- Example placeholder for a special Unicode symbol --> <string name="star_rating">Check out our 5 <xliff:g id="star">\u2605</xliff:g> </string> <!-- Example placeholder for a URL --> <string name="app_homeurl"> Visit us at <xliff:g id="application_homepage">http://my/app/home.html</xliff:g> </string> <!-- Example placeholder for a name --> <string name="prod_name"> Learn more at <xliff:g id="prod_gamegroup">Game Group</xliff:g> </string> <!-- Example placeholder for a literal --> <string name="promo_message"> Please use the "<xliff:g id="promotion_code">ABCDEFG</xliff:g>" to get a discount. </string> ... </resources>
Lokalisierungscheckliste
Einen vollständigen Überblick über das Lokalisieren und Verteilen einer Android-App finden Sie unter Siehe App übersetzen und lokalisieren
Tipps zur Lokalisierung
Beachten Sie beim Lokalisieren Ihrer App die folgenden Tipps.
App für alle Sprachen entwickeln
Vermuten Sie nichts über das Gerät, auf dem der Nutzer Ihre Möglicherweise hat das Gerät Hardware, mit der Sie nicht gerechnet haben, oder Es könnte auf eine Sprache eingestellt sein, die Sie nicht geplant haben oder die Sie nicht testen können. Konzipieren Sie Ihre App so, dass sie normal funktioniert oder ordnungsgemäß fehlschlägt. egal auf welchem Gerät.
Wichtig:Ihre App muss
enthält eine vollständige Auswahl an Standardressourcen:
res/drawable/
und ein res/values/
-Ordner ohne
zusätzliche Modifikatoren in den Ordnernamen, die alle Bilder und Texte enthalten.
die Ihre App benötigt.
Fehlt bei einer App auch nur eine Standardressource, wird sie nicht auf einer
Gerät mit einer nicht unterstützten Sprache. Wenn zum Beispiel der Parameter
In der Standarddatei res/values/strings.xml
fehlt ein String, der
die App benötigt, wenn sie in einer nicht unterstützten Sprache ausgeführt wird und
versucht, res/values/strings.xml
zu laden, erhält der Nutzer eine Fehlermeldung.
und die Schaltfläche Schließen erzwingen.
Weitere Informationen finden Sie im Abschnitt Test für Standardeinstellung Ressourcen.
Ein flexibles Layout entwerfen
Wenn Sie Ihr Layout an eine
bestimmte Sprache anpassen müssen,
können Sie ein alternatives Layout für diese Sprache erstellen,
res/layout-de/main.xml
für ein deutsches Layout. Wenn Sie jedoch
die Wartung Ihrer App erschweren kann. Es ist besser, eine einzelne
das flexibler ist.
Eine weitere typische Situation ist eine Sprache, Layout ändern. Angenommen, Sie haben ein Kontaktformular, das zwei Namensfelder, wenn die App auf Japanisch ausgeführt wird, aber drei Namensfelder, wenn die App in einer anderen Sprache ausgeführt wird. Sie können dies in einer der auf zwei Arten:
- Erstellen Sie ein Layout mit einem Feld, das Sie programmatisch aktivieren oder deaktiviert werden.
- Das Hauptlayout sollte ein weiteres Layout mit dem änderbaren Layout enthalten. ein. Das zweite Layout kann für verschiedene Sprachen.
Vermeiden Sie das Erstellen von mehr Ressourcendateien und Textzeichenfolgen als nötig.
Wahrscheinlich müssen Sie auch nicht für jede
in Ihrer App. Zum Beispiel ist das im
Die Datei res/layout/main.xml
funktioniert möglicherweise in jeder Sprache. In diesem Fall
müssen keine alternativen Layoutdateien erstellt werden.
Außerdem müssen Sie möglicherweise nicht für jede Zeichenfolge einen alternativen Text erstellen. Für wird im Beispiel von Folgendem ausgegangen:
- Die Standardsprache Ihrer App ist amerikanisches Englisch. Jede Zeichenfolge, die
in der App mit amerikanischen
Schreibweisen definiert ist,
res/values/strings.xml
- Für einige wichtige Wortgruppen möchten Sie britisches Englisch verwenden. Diese alternativen Strings sollen verwendet werden, wenn Ihre App auf einem im Vereinigten Königreich.
Erstellen Sie dazu eine kleine Datei
res/values-en-rGB/strings.xml
, die nur die Strings enthält, die
wenn die App im Vereinigten Königreich läuft. Für alle anderen
die Zeichenfolgen enthält, greift die App auf die Standardeinstellungen zurück und verwendet
definiert in res/values/strings.xml
.
Android-Kontextobjekt für manuelle Gebietsschemasuche verwenden
Sie können das Gebietsschema mithilfe des Objekts Context
ermitteln.
die Android zur Verfügung stellt, wie im folgenden Beispiel gezeigt:
Kotlin
val primaryLocale: Locale = context.resources.configuration.locales[0] val locale: String = primaryLocale.displayName
Java
Locale primaryLocale = context.getResources().getConfiguration().getLocales().get(0); String locale = primaryLocale.getDisplayName();
Nutze den App-Übersetzungsdienst
Mit der Funktion App Translation Dienst ist in die Play Console Damit können Sie ein sofortiges Angebot einholen und eine Bestellung aufgeben Übersetzungsunternehmen. Sie können Übersetzungen in eine oder mehrere Sprachen in Auftrag geben. für App-UI-Strings, Text in Play Store-Einträgen, Namen von In-App-Käufen und Text von Werbekampagnen.
Lokalisierte Apps testen
Testen Sie Ihre lokalisierte App auf einem Gerät oder mit dem Android-Emulator. Insbesondere Testen Sie Ihre App, um sicherzustellen, dass alle erforderlichen Standardressourcen enthalten sind.
Auf einem Gerät testen
Das Gerät, das Sie testen, kann sich deutlich von die Geräte, die Verbrauchern an anderen Orten zur Verfügung stehen. Verfügbare Sprachen auf deinem Gerät können sich von denen auf anderen Geräten unterscheiden. Die Auflösung und Anzeigedichte des Gerätebildschirms variieren, was sich auf die die Darstellung von Strings und Drawables in deiner Benutzeroberfläche.
Das Gebietsschema oder die Sprache auf einem Gerät können Sie in den Einstellungen ändern.
Auf einem Emulator testen
Weitere Informationen zur Verwendung des Emulators finden Sie unter Apps im Android-Emulator ausführen.
Benutzerdefinierte Sprache erstellen und verwenden
Ein „benutzerdefiniertes“ Sprache ist eine Kombination aus Sprache oder Region, System-Image nicht explizit unterstützt. Sie können testen, wie Ihre App läuft in einer benutzerdefinierten Sprache, indem du eine benutzerdefinierte Sprache im Emulator erstellst. Es gibt zwei Gehen Sie dazu so vor:
- Verwenden Sie die App „Custom Locale“ (Benutzerdefinierte Sprache), auf die Sie über die App-Tab. Nachdem Sie eine benutzerdefinierte Sprache erstellt haben, wechseln Sie zu dieser, indem Sie &berühren halten den Namen des Gebietsschemas.
- Wechseln Sie von der
adb
-Shell zu einer benutzerdefinierten Sprache, wie im folgenden Abschnitt beschrieben.
Wenn Sie im Emulator eine Sprache einstellen, die in der Android-App nicht verfügbar ist, System-Image wird das System selbst in seiner Standardsprache angezeigt. Ihr App jedoch ordnungsgemäß lokalisiert wird.
Sprache des Emulators über die ADB-Shell ändern
So ändern Sie die Sprache im Emulator über die adb
-Shell:
- Wählen Sie die Sprache aus, die getestet werden soll, und legen Sie das entsprechende BCP-47-Sprach-Tag fest.
z. B.
fr-CA
für Französisch (Kanada).
- Starten Sie einen Emulator.
- Führen Sie über eine Befehlszeilen-Shell auf dem Hostcomputer folgenden Befehl aus:
Befehl:
adb shell
Oder, wenn Sie ein Gerät angeschlossen haben, geben Sie an, dass Sie den Emulator nutzen möchten, indem Sie die Option-e
:
adb -e shell
- Führen Sie an der Shell-Eingabeaufforderung
adb
(#
) den folgenden Befehl aus:
setprop persist.sys.locale [BCP-47 language tag];stop;sleep 5;start
Ersetzen Sie die Abschnitte in Klammern durch die entsprechenden Codes aus Schritt. 1.
Beispiel für den Test auf Französisch (Kanada):
setprop persist.sys.locale fr-CA;stop;sleep 5;start
Dadurch wird der Emulator neu gestartet. Starten Sie die App neu, sobald der Startbildschirm wieder erscheint. und die App wird mit der neuen Sprache gestartet.
Auf Standardressourcen testen
So testen Sie, ob eine Anwendung jede erforderliche Stringressource enthält:
- Stelle für den Emulator oder das Gerät eine Sprache ein, die deine App nicht unterstützt
Support. Wenn die App z. B. französische Strings in
res/values-fr/
, hat aber keine spanischen Strings inres/values-es/
und setze dann die Sprache des Emulators auf Spanisch. Du kannst die App „Custom Locale“ verwenden, um den Emulator auf eine nicht unterstützte Sprache. - Führen Sie die App aus.
- Wenn in der App eine Fehlermeldung und die Schaltfläche „Schließen erzwingen“ angezeigt wird,
nicht nach einer Zeichenfolge suchen,
die nicht verfügbar ist. Achten Sie darauf, dass die
res/values/strings.xml
-Datei enthält eine Definition für die die App verwendet.
Wenn der Test erfolgreich ist, wiederholen Sie ihn für andere Konfigurationsarten. Für
Wenn die App eine Layoutdatei namens
res/layout-land/main.xml
, enthält aber keine Datei namens
res/layout-port/main.xml
und setze dann den Emulator oder das Gerät auf
Hochformat anzeigen und prüfen, ob die App ausgeführt wird.