So stellen Sie das Standardgebietsschema eines Android-App wieder her

Ich habe diese Android-App, die in mehreren Sprachen lokalisiert ist. Wenn die entsprechende Zeichenfolge für das Gebietsschema des Geräts vorhanden ist, wird die App automatisch angezeigt. So weit, ist es gut.

Als nächstes möchte ich den Benutzern der App erlauben, zu einer der von mir bereitgestellten Sprachen zu wechseln. Ich kann dies tun, indem ich das Standardgebietsschema überschreibe. Kein Problem hier auch.

  • HTTP funktioniert nicht im Android Emulator
  • Wie zeigt man an, dass der Bildschirm gesperrt ist?
  • Wie deaktiviere ich den Zoom in Chrome auf Android?
  • Ermitteln Sie eine neue Android-Benachrichtigung
  • In einer Nußschale, was ist der Unterschied von der Verwendung von OAuth2 Anfrage getAuthToken und getToken
  • Soft-Tastatur versteckt die Hälfte von EditText
  • Die Frage hier: Gibt es eine Möglichkeit für mich, eine "default" -Option in der Sprachliste zur Verfügung zu stellen, die es Benutzern ermöglicht, das standardmäßige, automatische Gebietsschema wiederherzustellen? Betrachten Sie das folgende Szenario:
    1. Das Gebietsschema des Gerätes ist auf Deutsch eingestellt. App zeigt alles auf Deutsch an.
    2. Der Benutzer möchte, dass die App auf Französisch ist, also ändern sie die Sprache aus der App, und die App wird Französisch als Ergebnis.
    3. Derselbe Benutzer ändert das Gebietsschema des Gerätes auf Spanisch. App ist noch Französisch.
    4. Sie wählen die Einstellung "Default". Die App wechselt auf Spanisch und ändert sich, wenn das Gebietsschema geändert wird.

    Wenn dies nicht automatisch möglich ist, dann gibt es eine Möglichkeit für mich, das Gerät-weite Gebietsschema zu bekommen, damit ich meine App dazu einstellen kann, wenn meine "Standard" -Option ausgewählt ist?

  • ActionBarActivity: kann nicht auf einen Typ aufgelöst werden
  • Session.isOpened () == true aber Session.getAccessToken () == ""
  • Wie man freie Version verwaltet?
  • Änderungslistenpräferenz Zusammenfassung Textfarbe und -größe
  • Android-Video-Editor-Klassen
  • Wie man einen System Dialog programmgesteuert schließt / abbricht / abläuft (Android)
  • 2 Solutions collect form web for “So stellen Sie das Standardgebietsschema eines Android-App wieder her”

    Ich habe dieses Problem behoben, indem du die vorhandene Einstellung beim ersten Ausführen der App speichert (bevor irgendwelche Änderungen an dem Standardgebietsschema vorgenommen werden). In einem Block, der nur das erste Mal läuft, wenn meine App läuft, rufe ich an:

    m_preferences.edit().putString( MyConstants.PREFERENCE_SYSTEM_LANGUAGE, getResources().getConfiguration().locale.getLanguage() ).commit(); 

    Später, wenn ich es abholen muss:

     languageToLoad = m_preferences.getString( MyConstants.PREFERENCE_SYSTEM_LANGUAGE, MyConstants.LANGUAGE_DEFAULT); 

    Beim Ändern der Sprache speichere ich das in einer anderen Präferenz und behandle die Aktualisierungen der Ansicht.

    Bearbeiten : Nach dem Stoßen um ein bisschen mehr, fand ich die Systemeinstellung. Ich wechselte, um dies zu verwenden, anstatt den oben genannten Code.

     Resources.getSystem().getConfiguration().locale.getLanguage(); 
     Locale defaultLocale = Locale.getDefault(); 

    Bearbeiten: Tut mir leid, ich habe gerade festgestellt, dass dies nicht in der Tat beantworten Sie Ihre Frage, da Sie den Standard überschreiben, um Ihre Änderung zu bewirken.

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.