Android, sqlite — как осуществить локализацию?

Добрый день.

Дано: приложение для андроида, база данных sqlite откуда приложение берет строки.

Посоветуйте, пожалуйста, каким образом осуществить локализацию? Из текущих мыслей - создать базу под каждую локаль и выбирать нужную проверкой текущей локали пользователя, либо разместить строки под все локали в одну базу, в разные столбцы и вытаскивать нужные данные той же проверкой, но все это выглядит, как костыль. Может быть, есть более изящное решение?
  • Вопрос задан
  • 3047 просмотров
Пригласить эксперта
Ответы на вопрос 2
Из текущих мыслей, создать базу под каждую локаль и выбирать нужную проверкой текущей локали

Зачем базу? Можно ведь для каждой локали свою таблицу с одинаковыми полями..
Например lang_ru lang_us... Обработка результатов одинаковая для всех а выборка с разных таблиц.

Можно конечно и к каждому полю добавить приставку _ru,_xx и положить в одну таблицу.

Но... У Андроида ведь своя система локализации. Зачем придумывать велосипед?
Ответ написан
@gleb_kudr
В БД:
1. Таблица языков. Перечисление вариантов языков и их свойств (в т.ч. имен таблиц)
2. Для каждого из языков, своя таблица со всеми переводами. + одна базовая или инвариантная таблица с первичным ключом.

Вполне такое работает на практике.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы