В процессе реализации поддержки традиционного и упрощенного китайского языка в моем приложении для Android я не понял, как это должно работать.
Итак, прочитав документацию , а также некоторые обсуждениякак это и это Я поместил упрощенный китайский в
- values-zh
- values-zh-rCN
- values-zh-rSG
и традиционный китайский на
- values-zh-rTW
- values-zh-rHK
Это все работает нормально, но как-то не имеет смысла для меня (извините, если я недостаточно понимаю о китайском упрощенном и традиционном использовании).
Из того, что я понял из проверки диалогового окна настроек локали в эмуляторе, а также на телефоне с рутом, пользователь может изменить локаль на упрощенный китайский или традиционный китайский.
Теперь вот вопрос.Как система знает, где взять упрощенный или традиционный китайский strings.xml.Есть ли какое-то предположение, в котором говорится, что если я должен отображать упрощенный китайский, получаю его из values-zh и получаю традиционный из values-zh-rTW?
Но что, если пользователь находится в HK инастроить его устройство для отображения упрощенного китайского?Или что, если эмигрант где-то еще в мире устанавливает свое устройство на традиционный китайский, но его регион, например, США или ЦА?
Что мне нужно сделать, чтобы мои пользователи могли задать свой языковой стандарт и отобразить мое приложениес правильным языком?
Обновление:
Из дальнейшего исследования я считаю, что пользователь телефона Android не может установить страну отдельно от языка.Они могут установить только то, что называется языком в пользовательском интерфейсе.Он состоит из языка и страны, но список ограничен, поэтому многие комбинации невозможны.
Например, китаец, живущий в США, который хочет использовать традиционный китайский, может установить язык на традиционный китайский (по крайней мере, нарутированный телефон), а затем будет иметь язык zh-rTW.Он никоим образом не мог установить свою страну отдельно от США.Аналогичным образом, эмигранты любого типа не могут установить свой родной язык со страной, в которой они живут в настоящее время.
В основном это означает, что поддерживается только несколько комбинаций языка и страны.Теперь вопрос в том, как узнать, кто они?