💬Всем привет, это Роза, Flutter Dev Friflex!
В прошлом посте мы обсудили TMS-системы — что это такое и зачем они нужны в локализации.
Сегодня перейдем от теории к практике: посмотрим, как подключить TMS к Flutter-приложению на примере Localizely.
Сначала все просто: регистрируемся, создаем проект, выбираем базовый язык и языки перевода. Потом приглашаем команду и добавляем ключи — можно создать их с нуля или импортировать уже существующие.
Допустим, вы это сделали. Что дальше? Конечно, приступаем к внедрению!
Тут все зависит от того, какой генератор локализации вы используете:
▪️Если intl_utils — подключаете библиотеку, настраиваете нужные конфиги (ID проекта, API-ключ) и запускаете команду синхронизации
▪️Если другие генераторы — скачиваете файлы генерации (через интерфейс Localizely или API) и подключаете их в проект по стандартному шаблону
🚀Это все круто, но мы хотим больше. По первому плану вам нужно после каждого изменения ключей вручную синхронизировать переводы с сервисом. Но это можно автоматизировать — и еще добавить OTA (Over-the-Air), чтобы получать свежие переводы без релиза новой версии приложения.
Давайте по порядку!
✔️Автоматизация при помощи gitHub
Здесь все строится вокруг конфигурационного файла localizely.yml в репозитории. В нем указываете, какие файлы переводов импортировать (pull) из GitHub в Localizely и какие экспортировать (push) обратно. После этого в разделе Integrations настраиваете автоматическую синхронизацию и привязываете GitHub для автоматического push/pull. А чтобы было еще удобнее — добавляете веб-хук. Тогда переводы обновляются в Localizely сразу после пуша изменений в репозиторий.
✔️Так, а теперь давайте к самому интересному — OTA
С ним вы можете доставлять новые переводы прямо в приложение без релиза в сторы. Пользователь просто открывает приложение, а там уже актуальные тексты.
Устроено это примерно таким образом: вы подключаете библиотеку для работы с OTA, добавляете SDK-токен и указываете ID дистрибутива — ветку с версиями релизов приложения. Далее при запуске приложение запрашивает сервис и сохраняет в кэш самую свежую версию переводов. Можно настроить обновление не только при старте, но и в фоне — например, раз в несколько часов или дней.
Это полезно, если у вас много динамичного контента или часто правятся тексты.
⛓️💥В итоге у нас получается такая цепочка:
GitHub следит за синхронизацией файлов → Localizely получает свежие ключи и переводы → OTA мгновенно доставляет их в приложение
Все, процесс локализации живет своей жизнью, а вы тратите время только на сами переводы и улучшение приложения.
❤️ — если было полезно
Post #204
629

- ❤ 10
- 🔥 4