Мобильная разработка
Производитель автомобильных охранных систем для российского рынка и экспорта. Установка и настройка сигнализаций выполняется дистрибьюторами и сервисными инженерами на местах.
До запуска проекта настройка и обновление прошивок сигнализаций выполнялись через десктопное приложение или проводной программатор. Для этого инженеру приходилось брать с собой ноутбук, подключать его к блоку сигнализации и работать прямо на месте установки.
Это вызывало массу неудобств:
Кроме того, у дистрибьюторов и сервисных инженеров не было простого способа получить свежую версию программы. Приходилось пересылать файлы вручную и устанавливать их на каждое устройство. Поскольку приложения в Google Play и App Store не было, централизованно обновлять софт было невозможно.
Клиент хотел, чтобы:
1. Создать мобильное приложение для Android и iOS, позволяющее:
Мы разработали мобильное приложение на Flutter для Android и iOS, которое позволяет сервисным инженерам и дистрибьюторам перепрошивать и настраивать автомобильные сигнализации клиента напрямую через Bluetooth Low Energy (BLE), без проводных программаторов и ноутбуков. Приложение поддерживает авторизацию пользователей, мультиязычный интерфейс, работу с библиотекой конфигураций, а также автоматическую проверку совместимости прошивок.
Теперь рабочий процесс выглядит так:
1. Устанавливаем приложение на планшет или смартфон (скачать можно напрямую из Google Play или App Store).
2. Авторизуемся под своей учётной записью.
3. Приходим к автомобилю, в котором установлена сигнализация клиента.
4. Запускаем поиск устройств — приложение сканирует BLE-эфир и показывает только поддерживаемые сигнализации.
5. Подключаемся к найденному устройству.
6. Приложение автоматически определяет версию установленной прошивки и предлагает обновить её до актуальной, загружая новый файл напрямую с сервера.
7. После обновления можно перейти к настройке конфигурации:
Все действия происходят по беспроводной связи, без разборки автомобиля и без физического доступа к блоку сигнализации. Таким образом, менеджеру достаточно иметь планшет, интернет и доступ к автомобилю — процесс стал мобильным, быстрым и удобным.
С точки зрения архитектуры и логики приложения решение построено следующим образом:
1. Поиск устройств. Приложение сканирует BLE, фильтруя устройства по имени и специальному протоколу, чтобы избежать подключения к неподдерживаемым сигнализациям.
2. Подключение. Соединение устанавливается по протоколу BLE Energy.
3. Обновление прошивки. Актуальная версия загружается с сервера через API.
4. Передача выполняется по внутреннему протоколу команд — прошивка разбивается на пакеты ограниченного размера, так как BLE передаёт небольшое количество байт за раз.
5. Перед началом прошивки старая версия удаляется, файл расшифровывается и сверяется на совместимость.
6. Настройка конфигурации. Используется тот же протокол команд — изменения параметров отправляются в байтовом виде на устройство.
7. Можно переключать режимы, активировать или деактивировать опции.
8. Обратная связь. Устройство отвечает по BLE командами-ответами, которые приложение парсит для отображения статуса.