2017-09-05 3 views
0

In meiner App lese ich Gruppennamen und IDs aus der Gerätedatenbank, und ich möchte eine Liste von Gruppennamen zum Hinzufügen von Berechtigungen erstellen, welche Art von Kontakten an meinen http-Server gesendet werden können. Gruppennamen in Datenbank von defauls sind in englischer Sprache, aber beim Hinzufügen/Bearbeiten von Kontakten werden sie in die aktuelle Gerätesprache übersetzt. Meine App sollte vollständig mehrsprachig sein. Wie kann ich das in meiner App übersetzen? Ich lese Gruppen von folgendem Inhalt uri:Wie übersetzt Android Gruppennamen?

ContactsContract.Groups.CONTENT_URI, 

aus Spalte:

ContactsContract.Groups.TITLE 

Antwort

1

Nur die vier Standardgruppen werden standardmäßig in Englisch erstellt:

My Contacts 
Family 
Friends 
Coworkers 

Andere Gruppen nicht sind Standardmäßig sind sie in Englisch, wie der Benutzer sie erstellt hat.

Sie können diese Standardgruppen in Ihrer App erkennen (indem Sie den Titel mit einer dieser 4 Zeichenfolgen vergleichen) und Ihrer strings.xml-Datei für jede Sprache, die Sie unterstützen möchten, eine Übersetzung hinzufügen.

+0

Danke für die Antwort. Sind Sie sicher, dass nur 4 Gruppen Standard sind? Mein Lenovo K5-Gerät hat zusätzlich: "Markierte in Android" und "VIP" -Gruppen, die nicht von mir erstellt wurden. Wenn es möglich ist, alle statischen Gruppen zu sammeln, ist Ihre Lösung ziemlich gut, aber ich glaube, dass andere Geräte etwas anderes haben können. – grabarz121

+1

Die 4 genannten Gruppen heißen "Systemgroups" und werden standardmäßig von Ihrem Google-Kontakte-Konto erstellt. "Starred in Android" wird von Googles SyncAdapter auf Android erstellt, ich bin mir nicht sicher über "VIP", aber ich habe es eine App auf vielen verschiedenen Arten von Geräten, und habe keine Geräte-erstellten Gruppen irgendwo gesehen, so würde ich für diese 5 gehen, und Sie können auch "VIP" hinzufügen – marmor