Разработка мобильного приложения для мониторинга транспорта

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Услуги, которые мы предлагаем
Показано 1 из 1Все 1735 услуг
Разработка мобильного приложения для мониторинга транспорта
Средний
от 1 недели до 3 месяцев
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    495

Разработка мобильного приложения для мониторинга транспорта

Диспетчер смотрит на карту — 40 грузовиков, и три из них не обновляли позицию уже 20 минут. Зависла ли трансляция? Нет сети в горах? Или GPS-антенна отключена намеренно? Это три разных сценария с разной реакцией, и приложение должно их различать — а не просто красить точку в серый цвет.

Что на самом деле нужно диспетчеру

Приложение мониторинга — не просто «маркеры на карте». Диспетчер работает с парком 20–200 единиц и ему нужны:

  • Реальное время с метаданными: координата + скорость + направление + статус двигателя + заряд батареи трекера
  • История трека: маршрут за день/неделю с геокодированными адресами остановок
  • Геозонирование: уведомление при въезде/выезде из зоны склада, стройплощадки, запрещённой территории
  • Алерты: превышение скорости, долгая стоянка с заведённым двигателем, отклонение от маршрута

Всё это требует разной архитектуры на клиенте.

Приём данных телематики в реальном времени

Телематические блоки (Teltonika FMB, Wialon TK, Navixy OEM) передают данные через TCP или GPRS на сервер. Мобильное приложение не соединяется с трекерами напрямую — оно получает уже обработанный поток через WebSocket или MQTT-клиент.

На Android используем OkHttp WebSocket с EventBus или SharedFlow для доставки обновлений в ViewModel. На iOS — URLSessionWebSocketTask (iOS 13+) или Starscream для более старых target'ов. Обновления приходят как JSON или protobuf — protobuf предпочтительнее при большом флоте: пакет 40 машин × 10 полей в protobuf занимает ~1.5 КБ против ~8 КБ в JSON.

Карта: производительность с большим флотом

200 маркеров на карте с анимацией движения — это уже напряжённо. Ключевые решения:

Аннотации вместо SVG-оверлеев. На iOS MKAnnotationView обрабатывает до ~300 маркеров без заметного лага. Свыше — используем MKOverlay с кастомным рендерером, который рисует все точки в одном CALayer. На Android Google Maps SDK с MarkerOptions деградирует после ~500 маркеров — переходим на Mapbox Maps SDK v10 с SymbolLayer на основе GeoJSON source: весь флот обновляется одним вызовом source.setGeoJson(featureCollection).

Clustering на сервере. При зуме < 11 кластеры считаются на сервере (PostGIS ST_ClusterKMeans), клиент получает готовые центроиды с счётчиком. Локальная кластеризация (Supercluster) подходит для флотов до 300–400 единиц.

Анимация движения. Позиция трекера обновляется раз в 10–30 секунд — маркер не должен «прыгать». ValueAnimator с LatLngInterpolator (Android) или CABasicAnimation с CGPoint interpolation (iOS) — маркер плавно «скользит» к новой точке.

История трека и геокодирование

Трек за день — это 2000–8000 точек в зависимости от интервала записи. Отображаем через Polyline / MKPolyline, но не весь трек сразу: загружаем bbox видимой области карты и запрашиваем точки только для неё. При зуме «весь день» — дискретизируем трек алгоритмом Douglas-Peucker на сервере.

Адреса остановок — reverse geocoding через Google Maps Geocoding API или OpenStreetMap Nominatim (self-hosted). Кешируем результаты в SQLite, чтобы не повторять запросы при скролле истории.

Алерты и уведомления

Превышение скорости, геозонные события, долгая стоянка — триггеры вычисляются на сервере, push-уведомление приходит через FCM/APNs. На iOS используем UNNotificationCategory с UNNotificationAction — прямо из уведомления можно открыть карту с конкретным транспортным средством.

Геозоны — полигоны GeoJSON, проверка ST_Contains в PostgreSQL + PostGIS при каждом входящем сообщении от трекера. Мобильный клиент только отображает геозоны и получает алерты — не вычисляет пересечения локально.

Этапы и сроки

Мобильное приложение для мониторинга транспорта разрабатывается параллельно с сервером обработки телематики или как надстройка над существующей платформой (Wialon, Gurtam, Navixy — все предоставляют SDK/API).

  1. Аудит телематической платформы и API
  2. Дизайн интерфейса диспетчера: карта, список транспорта, история, алерты
  3. Разработка: карта → реальное время → история → геозоны → уведомления
  4. Нагрузочное тестирование (имитируем 200+ трекеров с частотой обновления 30 сек)
  5. Публикация

MVP (карта + реальное время + история): 6–10 недель. Полная платформа с геозонами, алертами, аналитикой пробега и отчётами: 3–5 месяцев. Стоимость рассчитывается после аудита существующей инфраструктуры.