Доработка мобильного приложения для сферы автобизнеса
Разработка приложений для взаимодействия и управления различными компонентами и настройками автомобиля, а также мультимедиа системы.
Клиент
Компания по разработке ПО для Android Automotive.
Задача
Бизнес-задача проекта:
Повысить безопасность, удобство и надёжность управления автомобилем через голосовой интерфейс, обеспечив гибкость контроля функций при обновлениях.
Задачи в контексте разработки:
-
Доработать сервис обработки команд голосового помощника, API для управления автомобильными системами, механизм уведомлений и звуков
-
Добавить фича-флаги для отключения ассистента
-
Покрыть тестами
-
Обновить документацию
Решение
-
Создание сервиса для обработки команд от голосового помощника и взаимодействия с системой кондиционирования автомобиля
-
Реализация запуска голосового ассистента по нажатию на кнопку на руле
-
Дополнение API и настройка компонентов для управления дверьми, зеркалами, сиденьями и окнами. Перевод приложений на использование нового API
-
Работа с уведомлениями: создание и отображение новых типов уведомлений, реализация сортировки, покрытие тестами
-
Выключение/включение голосового ассистента при обновлении ПО
-
Воспроизведение индивидуальных звуков уведомлений через SoundPool
-
Реализация отключения голосового ассистента через фича флаг при сборке проекта
-
Исправление багов, установка и настройка эмулятора, написание тестов, обновление документации в Confluence, взаимодействие с разработчиками, аналитиками и другими коллегами и командами
Результат
-
Снижение риска аварийности из-за отвлечения водителя — юридически и фактически уменьшается вероятность ДТП при управлении второстепенными функциями.
-
Рост NPS и удовлетворённости — голосовое управление и кнопка на руле — явно ощутимые фичи, увеличивающие лояльность.
-
Ускорение выхода обновлений — фича-флаги позволяют включать ассистента в сборке, но отключать на продакшене до проверки, сокращая цикл релиза.
-
Снижение стоимости поддержки — покрытие тестами, документация и эмулятор уменьшают число багов, требующих горячих исправлений.
-
Дополнительная кастомизация для разных рынков — через фича-флаги можно собирать версии с ассистентом или без (например, для рынков с ограничениями на голосовые помощники).
Технологии
Kotlin, Coroutines, Flow, MVVM, Hilt, Room, Jetpack Compose, Jetpack Navigation, Clean Architecture, Mqtt, KotlinX Serialization, Protobuf, Mockito, Junit, Androidx Compose Test.