Смена системной локали на Android: пошагово
Короткий ответ: откройте Настройки → Система → Языки и ввод, добавьте нужный язык и выберите регион; если приложение игнорирует системную локаль, примените ADB-команду без root или воспользуйтесь MoreLocale 2.
Оглавление {{TOC_AUTOMATIC}}
Быстрая настройка через системные настройки
- Откройте Настройки → Система → Языки и ввод (иногда: Дополнительные настройки → Регион).
- Нажмите «Языки» → «Добавить язык», выберите нужный (например, Русский (Россия) или English (United States)).
- Перетащите новый язык в начало списка — он станет главным.
- Для региона в том же меню выберите страну; это меняет формат даты, времени, чисел и валюты.
- Проверьте Настройки → Система → Дата и время → Региональные форматы (12/24, формат даты).
- Перезагрузка необязательна, но рекомендуема для полного применения (особенно если видите несоответствие в системных приложениях).
Если нужного языка нет в списке, установите Gboard — она поддерживает множество локалей офлайн и добавляет языки клавиатуры.
Изменение локали через ADB (без root)
Когда системные настройки не помогают (часто в кастомных прошивках или при тестировании), можно задать локаль через ADB. Нужна включённая Отладка по USB и доступ к ПК с ADB.
Подключите устройство к ПК и выполните:
adb devices
adb shell settings put system user_locale ru-RU
adb reboot
Замените ru-RU на нужный код: en-US, fr-FR, zh-CN и т.д. На Android 13+ этот метод работает без root, но некоторые производители могут блокировать изменение локали для отдельных системных компонентов.
Включайте «Отладку по USB» только на личных устройствах. Для этого: Настройки → О телефоне → нажмите 7 раз по «Номер сборки», откройте Параметры разработчика и включите Отладку по USB.
Советы, утилиты и совместимость
- MoreLocale 2 — имитирует любую локаль без root; полезно для редких локалей, но некоторые банковские и DRM-приложения могут блокировать работу.
- Gboard или SwiftKey помогут с клавиатурой и локальными раскладками.
- Если приложение кэширует локаль, очистите кэш/данные: Настройки → Приложения → выбранное приложение → Память → Очистить кэш/данные.
- В китайских прошивках или прошивках с vendor-lock может потребоваться прошивка с поддержкой GApps или root-решения (Magisk-модули) — это рискованно и требует бэкапа.
- Для разработчиков: в приложении используйте Locale.getDefault() или настройку android:localeConfig, чтобы корректно реагировать на смену локали.
Частые ошибки
- Смена только языка без региона — приводит к неверному формату даты/времени (12/24) и валюты.
- Приложение всё ещё на старой локали — причина: кэш или жестко заданная локаль в самом приложении.
- Клавиатура не переключается — установите альтернативную клавиатуру с нужным языком.
- ADB-команда не подействовала — проверьте, разрешён ли доступ компьютера и нет ли ограничений производителя.
FAQ
- Нужно ли перезагружать телефон после смены языка?
- Обычно нет, но перезагрузка помогает избежать артефактов в системных сервисах.
- Можно ли сменить локаль без ПК и без приложений?
- Да: через Настройки → Система → Языки и ввод. Для редких локалей может понадобиться MoreLocale 2.
- Требуется ли root для изменения системной локали?
- Нет: ADB-метод работает на большинстве устройств Android 13+ без root.
- Как узнать код локали?
- Формат: язык-регион, например ru-RU, en-US, fr-FR, zh-CN.
Если после всех шагов локаль всё ещё некорректна, сделайте резервную копию данных и сбросьте настройки — при первом запуске после сброса система предложит выбрать язык и регион заново.