Как проверить, изменился ли язык телефона? - PullRequest
0 голосов
/ 16 октября 2010

Предположим, что приложение имеет некоторые исходные ресурсы на основе локали.Но ресурсы не «соответствуют» друг другу - одна локаль имеет меньше ресурсов, чем другая.Приложение сохраняет свое состояние при закрытии.

Таким образом, пользователь может запустить приложение в одной локали, закрыть его (приложение запоминает его состояние), затем пользователь меняет локаль телефона и восстанавливает приложение.Приложение пытается извлечь необработанный ресурс, но не удается, потому что некоторая информация в этом необработанном ресурсе отсутствует из-за другой локали.

Вопрос: как сохранить текущую локаль при закрытии приложения?

Я знаю о java.util.Locale, но как я могу поместить Locale в Bundle?Могу ли я рассчитывать на getLanguage()?

1 Ответ

1 голос
/ 16 октября 2010

Вы можете сохранить информацию о текущей локали в Предпочтение при закрытии приложения пользователем.

Ниже приведен пример кода для доступа к текущей локальной сети:

public class Activity() {
    public getLocal() {
        return getResources().getConfiguration().locale;
    }
}
...