Мобильное приложение
Rolla One
Приложение для здоровья и фитнеса с отслеживанием активности в реальном времени через носимые устройства и тренажёрные датчики по Bluetooth LE, а также GPS.
- Компания
- Rolla
- Период
- 2024 – 2025
- Стек
- Flutter
- Dart
- BLoC / Cubit
- Kotlin
- Bluetooth LE
- Platform channels
- GPS

Обзор
Rolla One — приложение для здоровья и фитнеса, которое я разработал с нуля и довёл до релиза. Оно отслеживает активность в реальном времени по данным подключённых устройств и GPS, рассчитывает показатели тренировок и визуализирует историю активности.
Моя роль
Flutter-разработчик в Rolla: отвечал за приложение от первого коммита до production, включая нативный Bluetooth-слой.
Задача
Данные о тренировке поступают с нескольких независимых устройств (браслета-пульсометра, датчиков беговой дорожки и велотренажёра) и с GPS. Каждое устройство нужно обнаружить, подключить и удерживать соединение на протяжении всей тренировки, в том числе в фоне, а сырые данные — объединить в единый согласованный поток.
Решение
Я спроектировал слой BLE-взаимодействия на Kotlin и предоставил его Flutter через platform channels. Он отвечает за сканирование и обнаружение устройств, управление подключениями, логику переподключения, работу в фоне и восстановление состояния. Сырые данные датчиков преобразуются в единый поток активности в реальном времени, который использует Flutter-слой.
Архитектура и реализация
- Нативный BLE-слой на Kotlin с логикой переподключения и восстановлением состояния.
- Парсинг сырых данных датчиков разных типов устройств в единый поток активности.
- Расчёт калорий и показателей тренировки на основе объединённых данных датчиков и GPS.
Ключевые функции
- Отслеживание активности в реальном времени
- Поддержка браслета-пульсометра, датчиков беговой дорожки и велотренажёра
- Графики временных рядов для истории активности
- Многоязычный интерфейс: английский, сербский и русский
Скриншоты




Результаты
- Выпущено в production и передано в виде стабильной, задокументированной кодовой базы.