Локализация и Интернационализация
Мы используем slang
для локализации и интернационализации приложения
Все ключи и текста хранятся в strings
модуле.
Hot Translation Overrides
Пакет slang
позволяет нам переопределять текста для ключей в рантайме.
В приложении это реализовано через Remote Config - l10n_overrides
То есть, если вдруг случилось, что к вам прибежал менеджер с очень срочной задачей на смену текстов, скорее всего это можно сделать через Remote Config
Как переопределить ключ
Нужно найти JSON Path для этого ключа и обновить значение в Remote Config
Пример:
# example_ru.i18n.json
{
"path": {
"to": {
"key": "Пока Мир!"
}
}
}
- Определяем путь ключа -
example.path.to.key
, гдеexample
- имя файла/namespace - Открываем Remote Config и добавляем ключ в мапу для русской локали
- Добавляем текст
- Публикуем
- Следим за Sentry, на случай если что-то пошло не так и текста не обновились
Узнать больше
Пакет slang
поддерживает не только замену текстов, но и списков, объектов и т. п.
Читай документацию, чтобы узнать больше