Разработка мобильного приложения для управления автопарком (Fleet Management)
Механик фиксирует замену масла в полевых условиях — без интернета, на планшете в кабине грузовика. Данные уходят на сервер через 40 минут, когда машина въезжает на базу. В этот момент выясняется, что диспетчер уже назначил тот же автомобиль на рейс через час. Конфликта не было бы, если бы плановое ТО отображалось в расписании до постановки на маршрут. Именно такие стыки — между механиком, диспетчером и водителем — и автоматизирует Fleet Management приложение.
Три роли, три интерфейса
Fleet Management — редкий случай, когда одно мобильное приложение не закрывает все сценарии. Обычно это:
Приложение водителя — путевой лист, маршрут дня, отметки о прохождении точек, расход топлива по чекам, фиксация инцидентов. Работает в основном офлайн, синхронизируется при остановках.
Приложение механика/техника — журнал ТО, чек-листы предрейсового осмотра, заявки на запчасти, фото дефектов с привязкой к транспортному средству. Тоже офлайн-first.
Приложение диспетчера/менеджера — карта с флотом в реальном времени, назначение маршрутов, статус водителей, KPI автопарка, алерты. Online-ориентированное, реальное время важно.
Технически все три строятся как один Flutter- или React Native-проект с разными entry point и ролевой логикой, либо как три отдельных app flavor/target с shared business logic в пакете.
Телематика и интеграция с бортовыми системами
Современный коммерческий транспорт оснащён OBD-II/J1939 портом. Через него можно получать: обороты двигателя, скорость, расход топлива, коды DTC (диагностические ошибки), пробег. Телематический блок (Teltonika, Wialon, Omnicomm) читает шину и отправляет данные на сервер.
Мобильное приложение водителя может напрямую читать OBD через Bluetooth: android.bluetooth.BluetoothSocket с протоколом ELM327 или через готовые SDK (OBDLink SX). На iOS — через ELM327 WiFi-адаптер и URLSession на локальный IP. Это работает для диагностики, но для основного трекинга продакшн-систем используют выделенный бортовой блок, не смартфон водителя.
Предрейсовый осмотр
Водитель перед выездом проходит цифровой чек-лист: тормоза, давление шин, освещение, аптечка, огнетушитель. Каждый пункт — подтверждение или отметка дефекта с фото. Без завершённого осмотра рейс нельзя начать — блокировка на уровне приложения.
Чек-лист настраивается для каждого типа транспорта (легковой, грузовой, спецтехника) через admin-панель. В приложении это динамические формы — JSON Schema с набором полей, которые рендерятся в нативные виджеты. JSONSchema → кастомный FormBuilder на Flutter/React Native.
Фото дефектов загружаются через WorkManager с NetworkConstraint — водитель не ждёт загрузки, уходит на маршрут, данные синхронизируются фоном.
Путевые листы и документооборот
Электронный путевой лист — требование российского законодательства с 2023 года (ФЗ-259, приказ Минтранса). Интеграция с ГИС «Путевые листы» через API Минтранса. Подписание через УКЭП (квалифицированная электронная подпись) или упрощённая схема через ruToken SDK / КриптоПро CSP Mobile.
Для международных проектов — Driver Hours of Service (HOS) compliance: ELD-mandate (США, FMCSA), AETR (Европа). Это целый отдельный модуль с контролем времени вождения и отдыха.
Карта и диспетчеризация
Диспетчер видит весь флот на карте в реальном времени — то же, что обсуждали в разделе мониторинга транспорта. Специфика fleet management: каждый маркер транспортного средства несёт контекст — назначен ли водитель, выполняется ли рейс, есть ли открытые дефекты, когда следующее ТО.
Назначение маршрута: диспетчер перетаскивает задание на машину на карте или выбирает из списка. Маршрут строится через Google Maps Directions API или HERE Routing (корпоративный тариф без ограничений запросов), с учётом весовых ограничений дорог (truck routing profile в HERE/OpenRouteService).
Аналитика и ТО
Планирование ТО — не просто «каждые 10 000 км». Зависит от пробега (по одометру или CAN-данным), моточасов, типа эксплуатации. Хранится как maintenance_schedule с правилами-триггерами. Мобильный клиент отображает приближающиеся ТО и нотификации — push через FCM/APNs механику и менеджеру парка.
KPI дашборд: пробег за период, расход топлива на 100 км (нормативный vs фактический), коэффициент использования (дни в рейсе / доступные дни), количество аварийных инцидентов. Данные из PostgreSQL, агрегируются на сервере, отображаются в нативных Chart-компонентах (fl_chart для Flutter, MPAndroidChart для Android-нативки, Charts для iOS).
Этапы и сроки
| Этап | Описание | Длительность |
|---|---|---|
| Аудит | Инвентаризация флота, телематика, текущие системы | 1–2 недели |
| Проектирование | Роли, workflow, API-контракты | 2–3 недели |
| Разработка MVP | Водитель + диспетчер, базовый трекинг, путевые листы | 10–14 недель |
| Механик + ТО | Чек-листы, дефекты, планирование ТО | +4–6 недель |
| Интеграции | OBD, ГИС Путевые листы, ERP/1С | +2–4 недели |
| Пилот | 2–3 машины в боевых условиях | 2–3 недели |
Стоимость зависит от набора модулей и глубины интеграций. Рассчитывается индивидуально после аудита инфраструктуры автопарка.







