Получи случайную криптовалюту за регистрацию!

​​Релиз Android-приложения каждый день #gradle #tools Выпуск | Android Live 🤖

​​Релиз Android-приложения каждый день
#gradle #tools

Выпуск новой версии приложения — довольно трудоёмкий процесс для большинства разработчиков. Ведь нужно проверить последние фичи, перевести новые строки, проверить, не сломались ли текущие вещи… ну и верить, что Proguard не поломал что-то, если добавили новую библиотеку.

Ребята из команды Todoist поделились секретами автоматизации процесса создания билдов в своей команде.

Что было:
большие ветки в git с кодом — каждый раз, когда разработчик пытался влить в develop свою фичу, его ожидали конфликты с уже влитыми фичами и попытки всё исправить, что отнимало время.

блокер в виде переводов — приложение переводится на 15 языков, что также затягивало процесс: надо было сделать какой-то файл для переводчиков и дождаться ответа от них, а когда всё завершится, влить это в готовую ветку. Ну и проверить, что переводчик не поломал формат строк.

долгая сборка проекта — при сборке проекта приходилось ждать до 2 часов, что критично, если надо сделать релиз быстро.

Что добавили:
feature flags — добавили возможность включения и отключения частей приложения удалённо, что позволяет не ожидать полностью завершённой фичи в главной ветке, ведь пользователь этого не увидит. При этом заметно уменьшается число конфликтов при слиянии веток.

автоматизация переводов — довольно круто автоматизировали процесс загрузки и получения строк от команды тестировщиков. Ещё добавили верификацию строк, чтобы ничего не поломать новой строчкой.

автоматический changelog — добавляют его на основе pull request от разработчиков.

В итоге получилось заметно снизить время загрузки конкретного билда, что улучшило много показателей приложения.