Разработка кастомного Android-приложения для VMS: гайд по созданию в 2026 — обложка

Главное

Разработка Android-приложений для VMS сегодня — задача про софт, а не про камеры. Мировой рынок программного обеспечения для управления видео растёт темпом около 19–30% в год до 2032 года, тогда как рынок «железа» — лишь 6%. Ценность создают софт, удобный интерфейс на мобильных устройствах и аналитика, а Android — самый простой способ дать каждому охраннику доступ к системе видеонаблюдения.

Коммерческих путей три. Можно использовать готовое приложение от вендора (Milestone, Genetec, Verkada) и смириться с его интерфейсом, встроить SDK вендора в лёгкую кастомную оболочку или создать полностью собственный Android-клиент VMS на базе ONVIF, RTSP и WebRTC. Каждый из этих вариантов — это компромисс между уровнем контроля, скоростью выхода на рынок и рисками, связанными с лицензированием.

Реалистичные бюджеты на 2026 год. Минимально жизнеспособный продукт (живой просмотр, воспроизведение, пуш-уведомления) обойдётся примерно в 1,8–3,3 млн ₽ при работе с командой на аутсорсе. Приложение среднего уровня с поддержкой PTZ, обратной аудиосвязью, ролевой моделью администрирования и одной-двумя интеграциями с VMS — 4,1–6,7 млн ₽. Мультитенантная корпоративная версия с edge AI и MDM-режимом киоска — 8,2–13,5 млн ₽. При работе с федеральными заказчиками, требующими соответствия NDAA, закладывайте дополнительный запас.

Самые сложные задачи — это кодеки, фоновая работа и соблюдение требований. Патентные пулы H.265, правила работы foreground-сервисов в Android 14/15, ротация FCM-токенов, ограничения в режиме doze, защита сертификатов от MITM-атак и соответствие Section 889 NDAA — это те области, где проекты теряют недели, если изначально недооценить объём работы.

Прочитайте это до подписания ТЗ. Ниже — взгляд сеньорной инженерной команды на то, как Фора Софт оценила бы, спроектировала и собрала кастомный Android-клиент VMS сегодня: с компромиссами, KPI и подводными камнями, с которыми мы сталкивались в реальных видеопроектах.

Почему этот гайд написала Фора Софт

Фора Софт почти два десятилетия разрабатывает продукты для видео и видеонаблюдения. Мы создавали приложения для IP-камер в реальном времени, AI-решения для ритейла, умные SIP-домофоны, Android MDM для парков из 10 000 устройств и клиенты IPTV для приставок — то есть те самые компоненты, которые серьёзное Android-приложение для VMS объединяет в единую систему. Мы знаем, где теряется производительность, какие уровни Android API могут сломать работу и какие требования по комплаенсу нельзя игнорировать.

Этот гайд написан для продакт-оунеров, директоров по безопасности и CTO, которые сейчас оценивают объём работ по созданию кастомного Android-приложения для VMS — а не для инженеров, выбирающих библиотеку. Сначала разберём коммерческие решения: стоит ли делать самому или покупать, во что вкладываться, а что можно пропустить. Затем поговорим об архитектуре и о подводных камнях. Каждая цифра, каждый диапазон и каждая рекомендация основаны на реальных проектах, которые мы реализовали, включая NetCamStudio (мультикамерный захват с управлением кодеками), Android-платформу MDM, обслуживающую 10 000 устройств, и SIP-в-WebRTC-домофон, который передаёт потоки с IP-домофонов на телефоны.

Наша команда использует агент-ассистированный инжиниринг (внутренние пайплайны на Claude и Cursor), чтобы ускорить рутинные задачи — создание CRUD-экранов администрирования, шаблонный код ONVIF-дискавери, настройку FCM, базовые UI для настроек. Это позволяет сосредоточиться на действительно важных вещах: производительности видео, безопасности и интеграциях, за которые платит заказчик. Поэтому наши оценки заметно точнее, чем типичные диапазоны 2024–2025 годов.

Оцениваете кастомное Android-приложение для VMS и хотите свериться?

Возьмите список камер, перечень функций и дедлайн. За 30 минут расскажем, какой путь самый быстрый, где будет утекать бюджет и что можно сократить.

Позвоните нам → Напишите нам →

Что на самом деле должно уметь Android-приложение для VMS

Любой осмысленный Android-клиент VMS решает шесть задач, и большинство проектов недооценивают как минимум три из них. Если ваш функционал упускает хотя бы одну — у вас не VMS-приложение, а просто просмотрщик IP-камер.

Шесть базовых задач

1. Живой мониторинг с низкой задержкой. Один поток должен открываться менее чем за 2 секунды glass-to-glass в локальной сети, мультитайл-сетка (4/9/16) — работать при потере менее 1% кадров на устройствах среднего уровня. Всё медленнее — и оператор перейдёт на десктоп. Это базовая, обязательная функция.

2. Воспроизведение записи с прокруткой по таймлайну. Операторы чаще анализируют инциденты, произошедшие вчера, чем смотрят события в реальном времени. Таймлайн должен поддерживать воспроизведение в 4K, быстро переходить между событиями движения и позволять экспортировать видеоклипы с проверяемой цепочкой хешей.

3. Оповещения в реальном времени, переживающие Android Doze. Движение, пересечение линии, человек или транспорт, вторжение в зону, срабатывание датчика вскрытия. Задержка доставки уведомления — менее 5 секунд, даже если телефон заблокирован, простаивает или работает в режиме энергосбережения. Именно здесь большинство приложений терпят неудачу в реальных условиях.

4. PTZ и двусторонняя аудиосвязь. Команды поворота, наклона и зума должны выполняться быстрее 500 мс — иначе джойстик будет казаться неработающим. Голосовая связь (talk-back) должна использовать кодеки Opus или AAC-LD с эхоподавлением, настроенным под микрофон камеры, а не телефона. Это особенно важно для эффективного контроля в ритейле и на парковках.

5. Ролевой доступ и журналы аудита. Матрица прав по камерам, журналы доступа к видео, цепочка происхождения для доказательств. Без этого вы не пройдёте ни проверку по GDPR, HIPAA, ни BIPA, и корпоративный заказчик не станет с вами работать.

6. Устойчивость к офлайн-режиму. Кэширование превью, последнее известное состояние камер, недавние события. Переподключение с экспоненциальным бэк-оффом. Сообщайте пользователю, что он видит устаревшие кадры. Мобильные сети могут пропадать — ваше приложение не должно падать.

Опциональные функции, приносящие корпоративную выручку

Когда шесть базовых задач выполнены, дальше идут функции, которые оправдывают рост цены на камеру. Именно здесь партнёры и интеграторы выделяют себя на фоне конкурентов. Edge AI на устройстве (TensorFlow Lite, NNAPI) позволяет распознавать людей, транспорт и аномалии прямо на камере — видео не уходит в облако, а значит, экономится трафик при передаче данных. Облачный AI про запас нужен для сложных моделей (например, распознавание номеров, походки, поведения) — он даёт возможность продавать дополнительные услуги по оплате за событие. Интеграции с POS или системами контроля доступа превращают «сырое» видео в дашборды по борьбе с потерями — а это гораздо важнее для ритейла, чем разрешение камеры. MDM-режим киоска превращает планшеты охраны в однофункциональные устройства, на которые нельзя установить сторонние приложения. White-label позволяет реселлерам выпускать тот же программный продукт под своим брендом.

Кастомное Android-приложение для VMS оправдано, когда: вам нужны сценарии, которые стандартное приложение вендора не поддерживает; вы работаете с несколькими VMS или камерами разных брендов; вы предоставляете управляемый сервис для реселлеров; либо требования комплаенса предполагают полный контроль над маршрутом данных.

Рынок VMS-2026 в цифрах

Если вы продвигаете этот проект внутри компании, макроэкономика работает на вас. Три цифры делают почти всю работу.

Программное обеспечение развивается примерно вдвое быстрее, чем аппаратное. Прогноз Memoori на 2025–2030 годы оценивает мировую выручку от «железа» для видеонаблюдения в 2,5 трлн ₽ (2024) с ростом до 3,5 трлн ₽ (2030) при темпах около 6% в год, тогда как софт для управления видео, аналитики и хранения данных растёт примерно на 12% в год. Сегмент мобильных VMS растёт ещё быстрее — MarketsandMarkets ожидает рост с 208 млрд ₽ (2025) до 300 млрд ₽ (2030), при темпах 13,9% в год в сегменте ИИ и аналитики на краю сети.

База покупателей сместилась в Северную Америку и APAC. В 2024 году на Северную Америку пришлось 36% рынка мобильного видеонаблюдения. APAC растёт быстрее всех — за счёт программ «умных городов» в Китае, Индии и Южной Корее. Если вы разрабатываете решения для европейских заказчиков, то GDPR — это ограничение, которое определяет архитектуру; к этому вопросу мы ещё вернёмся.

Консолидация — реальность. Memoori насчитала 24 сделки M&A в секторе VMS за период с сентября 2023 по август 2025 года и около 285 млрд ₽ инвестиций в 38 сделок. Private equity перекраивает отрасль, и консолидация идёт со стороны программного обеспечения, а не оборудования. Перевод: OEM, с которым вы сейчас интегрируетесь, в следующем году может оказаться у нового владельца. Планируйте слой интеграции так, чтобы его можно было легко заменить.

Build, buy или OEM SDK: три коммерческих пути

До любого архитектурного решения определитесь, по какому из трёх путей вы идёте. Неверный выбор обернётся шестью месяцами потерь.

Путь A — использовать мобильное приложение вендора. XProtect Mobile, Genetec Mobile, Verkada Command, Avigilon Cloud Services. Никаких инженерных усилий. Вы получаете интерфейс и расписание обновлений от вендора, но с жёсткими ограничениями на кастомизацию. Подходит для систем с одним вендором и до 200 камер. Проблемы начинаются, когда заказчик просит функцию, которой у вендора нет или которую он не планирует внедрять.

Путь B — обернуть SDK вендора в кастомную оболочку. Большинство крупных производителей VMS предлагают мобильные SDK (Milestone, Hanwha, Bosch, Network Optix Nx Witness, Eagle Eye). Вы реализуете свой вход, брендинг, навигацию и нужные интеграции — SDK отвечает за стриминг и воспроизведение. Это быстрее, чем полностью кастомная разработка (8–14 недель до готового приложения), но вы остаётесь привязанными к одной экосистеме и одной модели оплаты лицензий.

Путь C — построить кастомный Android-клиент VMS поверх ONVIF, RTSP, WebRTC и собственного бэкенда. Полный контроль над системой. Поддержка камер разных производителей «из коробки». Вы сами управляете потоком данных, обработкой оповещений, аналитикой и лицензированием. По этому пути обычно идут реселлеры, сервис-провайдеры и ISV в сфере безопасности, когда у них появляется несколько похожих заказов.

Выбирайте Путь C (полную кастомную разработку), когда: вы работаете с несколькими клиентами; у вас разнородный парк камер; искусственный интеллект — важная часть вашего предложения; или требования по соответствию нормам требуют контроля над данными. В остальных случаях начните с Пути A или B и переходите на C по мере роста.

ONVIF Profile S, G, T простым языком для продакт-оунеров

ONVIF — это единственный способ, с помощью которого кастомное Android-приложение для VMS может работать с камерами двадцати разных брендов без необходимости создавать двадцать отдельных драйверов. Знать SOAP не обязательно. Важно понимать, какие профили действительно нужны.

Profile S — это базовая поддержка живого видео и управления PTZ. RTSP-видео, аудио, простая сигнализация событий, команды поворота, наклона и зума. Почти каждая IP-камера, выпущенная с 2012 года, его поддерживает. Если камера его не поддерживает — не покупайте её для парка.

Profile G поддерживает запись как на самой камере, так и на NVR: поиск по архиву, экспорт видео, просмотр таймлайна. Именно с этими функциями работает экран воспроизведения. Если ваше приложение должно просматривать записи за вчерашний день с SD-карты камеры или NVR — нужна поддержка Profile G с обеих сторон.

Profile T — современный профиль: H.265, продвинутое распознавание движения, события edge-аналитики (пересечение линии, вторжение в зону, классификация «человек/транспорт»), оповещения о попытке вскрытия (тампер), двунаправленное аудио. В 2026 году любая камера, которую называют «AI-камерой», должна поддерживать Profile T. Без него все функции ИИ будут зависеть от проприетарных API конкретных производителей.

Сравнение протоколов стриминга: RTSP, WebRTC, HLS, SRT

Выберете не тот протокол — будете расхлёбывать последствия весь срок жизни продукта. Подбирайте протокол под сценарий, а не под демонстрацию вендора с выставки.

Протокол Типичная задержка Сильная сторона Слабая сторона Лучший сценарий
RTSP/RTP 200–500 мс (LAN) Родной для любой IP-камеры, без транскодирования Потери пакетов UDP на нестабильном WAN, проблемы с NAT On-rem, одна площадка, просмотр в локальной сети
WebRTC 200–500 мс (WAN) Менее секунды через публичный интернет, обход NAT встроен Нужна инфраструктура SFU/TURN, масштаб зависит от числа зрителей Облачная VMS, домофоны, talk-back, удалённое PTZ
HLS/LL-HLS 2–6 с (HLS), 1–3 с (LL-HTTP) Масштабируется на тысячи зрителей с помощью CDN Слишком высокая задержка для активного мониторинга Публичные трансляции, образовательные стримы, воспроизведение архивных записей
SRT 300–800 мс Устойчив к нестабильному интернету при низкой задержке Хуже поддерживается в браузерах, меньше мобильных декодеров Мобильный/сотовый ингест, аплинк с дрона, contribution-стримы
RTMP 2–5 с Универсальная поддержка ингеста Устарел для воспроизведения, наследие Flash Только ингест, никогда — воспроизведение в VMS

Для типичного Android-приложения для VMS правильный ответ обычно состоит из нескольких слоёв: RTSP от камеры до медиашлюза, а затем WebRTC от шлюза до телефона. Шлюз решает несоответствие протоколов, завершает шифрование, при необходимости транскодирует поток и обеспечивает единую точку для проверки авторизации. Мы используем эту схему с MediaMTX, Janus и LiveKit — в зависимости от масштаба.

Сравнительная матрица: 8 ведущих платформ управления виртуальными машинами

Если вы подключаетесь к уже существующей VMS, а не создаёте свою, вот краткий список. Сильные и слабые стороны — по нашим реальным интеграциям, а не по маркетинговым заявлениям.

Платформа Развёртывание AI/Edge Дифференциатор Кому подходит
Milestone XProtect On-prem и облако Серверный, через партнёров Более 1000 интеграционных партнёров Мультисайтовый энтерпрайз, ритейл-сети
Genetec Security Center Гибридное облако Свой (Omnicast) Единая VMS + контроль доступа Госсектор, критическая инфраструктура
Avigilon Alta Cloud-first Свой (Avigilon AI) Appearance Search, простой UX Средний бизнес, cloud-нативный
Hanwha Wisenet On-prem и облако Edge AI в камерах Совместимость с NDAA, качество изображения Федеральный сектор США, крупные кампусы
Bosch BVMS On-prem и облако Серверный + базовый edge Надёжность на мегамасштабе Критическая инфраструктура, транспорт
Verkada Command Только облако Облако + edge AI Связка железа и софта, быстрое развёртывание SMB и средний ритейл
Eagle Eye Networks Только облако Серверный AI Дружественен реселлерам, white-label MSP, интеграторы
Network Optix Nx Witness On-rem и облако SDK для плагинов Открытый SDK, приоритет ONVIF Кастомные интеграторы, OEM

Если у вас ограничения по NDAA, шорт-лист камер — это, по сути, Hanwha, Axis, Bosch, Pelco и Avigilon. Всё с SoC HiSilicon, включая OEM-перемаркировки, пропускайте, пока не получите письменное разрешение. Подробнее про комплаенс — в соответствующем разделе ниже.

Мультикамерная сетка: как держать 16 тайлов плавными

Grid-вьюер — это то, что просит каждый заказчик на демо, и именно здесь большинство приложений начинают тормозить. Математика не прощает: девять потоков 1080p H.264 при 30 fps — это около 2,7 гигапикселей декодирования в секунду. У смартфонов среднего уровня GPU начинает снижать производительность из-за перегрева уже через три минуты, если этим не управлять активно.

Четыре правила, которые действительно работают

1. Используйте аппаратные декодеры MediaCodec, а не программные фоллбэки. Определяйте возможности устройства во время выполнения. Если для кодека нет аппаратной поддержки — сначала снижайте разрешение тайла, а не частоту кадров.

2. Адаптивное разрешение для каждого тайла. 16-тайловая сетка в 1080p — это потраченные впустую пиксели: пользователь всё равно не разглядит детали в ячейке 250×140. Подтягивайте substream (480p или 360p) для тайлов уже ≈480 пикселей. Переключайтесь на основной поток, когда пользователь двойным тапом разворачивает тайл на полный экран.

3. Следите за thermal API. Android возвращает PowerManager.getCurrentThermalStatus(). Если уровень выше «moderate» — снижайте частоту кадров с 30 до 15 и сообщайте пользователю, что устройство троттлит. Лучше показать жёлтый индикатор, чем молча замедлять работу приложения.

4. Агрессивно ставьте на паузу тайлы, ушедшие с экрана. При прокрутке останавливайте декодеры, вышедшие за пределы вьюпорта. Возобновляйте воспроизведение с того же I-кадра, а не перезапускайте соединение. Это экономит ресурсы CPU, GPU, заряд батареи и трафик.

По умолчанию рендерите substream, когда: ваш типичный пользователь смотрит 9 и больше тайлов на телефонах. Лишний тап для перехода в полноэкранный режим стоит дешевле, чем телефон, который греется у пользователя в кармане.

Пуш-оповещения, которые действительно доходят на Android 14 и 15

Большинство VMS-приложений терпят неудачу в надёжности пуш-уведомлений. Пользователь видит оповещения в приложении, бэкенд фиксирует их отправку, FCM подтверждает доставку — но телефон лежит на кухонной столешнице, заблокирован, в спящем режиме, и уведомление не выводит экран из сна. За этим стоят три изменения в платформе Android.

Doze-режим и App Standby Buckets. Простаивающие телефоны переходят в режим Doze. При этом приостанавливаются сеть, будильники и планировщик задач. Высокоприоритетные сообщения FCM проходят через Doze, но Google следит за злоупотреблениями: если вы отправите слишком много high-priority уведомлений, которые не приводят к видимым пользователю оповещениям, ваше приложение могут понизить в приоритетах. Отправляйте хартбиты только в рабочее время, а high-riority — только для настоящих уведомлений.

Правила типов foreground-сервисов (Android 14+). Фоновые сервисы, обращающиеся к сети, микрофону, камере, геолокации или медиавоспроизведению, обязаны декларировать foregroundServiceType. Неверный тип в рантайме бросает ForegroundServiceTypeException. Для VMS-приложений актуальны типы mediaPlayback, camera, microphone и новый specialUse для сессий мониторинга.

Ротация FCM-токенов. Токены обновляются при переустановке приложения, очистке данных, обновлении операционной системы или смене устройства. Приложения, которые не подписаны на onNewToken() и не отправляют новый токен на сервер сразу, теряют 5–10% устройств в месяц. Больше всего страдают парки планшетов, которые часто перепрошивают, телефоны клиентов, в которых меняют SIM-карты, и киоск-устройства, которые перезагружаются раз в неделю.

Лечение для всех трёх проблем — простое: корректно указывайте типы сервисов, относитесь к onNewToken() как к полноценному продукту (а не к временной заглушке) и измеряйте общую задержку доставки пуша — от времени на сервере до вызова onMessageReceived(). По всему парку устройств мы придерживаемся цели — не более 5 секунд на 95-м процентиле.

Пуш-оповещения теряются в продакшене?

Принесите схему пуш-пайплайна и логи FCM за неделю. За 30 минут покажем, где теряются оповещения — обычно это два конкретных места.

Позвоните нам → Напишите нам →

Edge AI на устройстве против облачной аналитики

К 2026 году «AI-камера» — уже не функция, а стандартная опция. Интересный вопрос — где именно работает этот ИИ. Для Android-приложения VMS важны две локации: на самой камере (edge) или на сервере, с которым взаимодействует приложение (облако или on-prem). Сам телефон редко подходит для тяжёлых моделей, работающих с непрерывным видеопотоком — из-за быстрого расхода батареи.

Edge AI на камере — самый быстрорастущий сегмент, потому что обещает приватность («видео не покидает здание») и снижает расходы на передачу данных в облако. Камеры Hanwha, Axis, Avigilon и Verkada выполняют распознавание объектов и поведенческий анализ прямо на устройстве. Ваше Android-приложение получает готовые события — «обнаружен человек», «пересечена линия», «транспорт стоит» — и отображает их на временной шкале. Саму модель вы не используете.

Облачный или on-prem AI — это то, что нужно для задач, которые камера не может выполнить сама: распознавание номеров с региональными базами, индексирование лиц, анализ походки, выявление поведенческих цепочек, кросс-камерный трекинг. Эти модели работают на сервере и получают тот же RTSP-поток, что и приложение. С точки зрения Android-клиента edge- и облачный AI выглядят одинаково — события поступают на таймлайн. Разница лишь в том, кто оплачивает вычисления для каждого события.

AI на самом телефоне оправдан в узких сценариях: размытие лиц прохожих для защиты приватности до того, как их увидит оператор; распознавание скачанного клипа в реальном времени при обработке; рабочие процессы охранных планшетов, которым нужна работа без интернета. TensorFlow Lite с делегатом NNAPI обеспечивает 5–15 мс на инференс при детекции объектов на новом Snapdragon — этого хватает для одного-двух потоков, но недостаточно для обработки сетки из 16 тайлов. В нашем гайде по детекции аномалий мы подробно разбираем выбор модели.

Безопасность, шифрование и контроль доступа

Видеонаблюдение — это самые чувствительные данные, которыми владеет ваш заказчик. Приложение должно относиться к ним с первого дня, а не после первого аудита.

Три слоя, на которые стоит обратить особое внимание

1. Транспорт. TLS 1.3 до каждого бэкенда. Certificate pinning на FCM-сервере, API-сервере и медиашлюзе. Поставляйте конфиги пиннинга по вариантам сборки — в debug-сборках без пиннинга, чтобы инженеры могли использовать Charles, а в release-сборках — с обязательным пиннингом. Большинство приложений проваливают пентест именно на этом этапе.

2. Хранилище. Учётные данные и refresh-токены — в Android Keystore, а не в SharedPreferences. Кэшированное видео и превью — в EncryptedFile. Метаданные событий в SQLite шифруйте с помощью SQLCipher или Jetpack Security. Для экспортов доказательств используйте цепочку хешей, чтобы можно было проверить целостность цепочки хранения.

3. Идентификация и авторизация. SSO через OIDC — если у заказчика он настроен (Okta, Entra, Google Workspace), MFA — по TOTP или пуш-уведомлениям. Матрица ролей по камерам формируется на стороне бэкенда, а не приложения. Приложение — это только интерфейс, не уровень безопасности. Каждый запрос на видео и каждая команда PTZ проверяются на сервере, даже если в интерфейсе кнопка скрыта.

Сквозное шифрование — когда облако не может расшифровать видео — в коммерческих VMS встречается редко, потому что мешает серверной записи, поиску и работе ИИ. Если клиент настаивает на нём, рассматривайте это как изменение архитектуры, а не как простую опцию. Настоящее E2EE в контексте VMS обычно означает, что ключ оператора хранится в аппаратном модуле на месте, приложение получает ключ напрямую, а облако видит только зашифрованные данные. Это отдельный подпроект, который займёт 4–8 недель.

NDAA, GDPR, HIPAA, BIPA: карта комплаенса

Комплаенс — самая частая причина, по которой кастомное Android-приложение для VMS не проходит закупку. При этом дело не в плохом инжиниринге, а в том, что никто не задокументировал путь данных. Решайте эту проблему заранее.

Section 889 NDAA запрещает федеральным агентствам США, подрядчикам и получателям грантов использовать оборудование Hikvision, Dahua, Hytera, Huawei и ZTE, включая OEM-версию на их SoC. Если ваш заказчик как-то связан с федеральным контрактом, вы не можете использовать эти камеры — даже если он настаивает. Ведите матрицу соответствия с каждым поставщиком камер, каждым SoC и каждым облачным регионом и получайте подпись заказчика.

GDPR (ЕС/Великобритания) — это ограничение, формирующее архитектуру. Сроки хранения видео — это «минимизация данных» на юридическом языке: обычно 30–90 дней, дольше нужно обосновывать. Субъекты данных могут запросить доступ (DSAR) и удаление. С самого начала делайте в интерфейсе оператора функции «экспортировать всё, где есть человек X» и «удалить всё, где есть человек X». Трансграничная передача требует стандартных договорных оговорок, если облачный бэкенд находится за пределами ЕС.

HIPAA (здравоохранение США) применяется, когда камера фиксирует пациентов, медицинские карты или зоны лечения. Доступ к PHI фиксируется, данные шифруются в состоянии покоя, ведётся аудит-лог. Заключайте соглашение о сотрудничестве (Business Associate Agreement) с каждым облачным и SaaS-поставщиком в цепочке обработки данных. Запланируйте четыре недели на цикл аудита для каждого релиза.

BIPA (штат Иллинойс) и другие биометрические законы США регулируют использование распознавания лиц, отпечатков пальцев и анализа походки. Перед сбором биометрических данных обязательно требуется письменное согласие пользователя. Эти данные нельзя продавать или передавать третьим лицам. В приложении необходимо предусмотреть возможность отказа от использования биометрии и надёжный механизм отключения (kill-switch) для функций распознавания лиц по каждой камере. Несколько штатов США взяли за основу закон BIPA — рассматривайте его как минимальные требования, а не как предел.

Эталонная архитектура Android-клиента для VMS

Рабочая архитектура кастомного Android-приложения для VMS состоит из четырёх компонентов: камеры, шлюза, бэкенда и самого приложения. Чёткое разделение между ними — ключ к тому, чтобы собрать систему за шесть месяцев, а не за восемнадцать.

Плоскость камер. Камеры ONVIF Profile S/Г/Т, одного или нескольких вендоров, возможно подключённые через NVR. Некоторые камеры выполняют edge AI и сами генерируют события. Камеры используют RTSP и ONVIF-уведомления.

Плоскость шлюза. Медиашлюз (MediaMTX, Janus, LiveKit или серверная часть вендорского SDK) принимает RTSP-потоки от камер и передаёт их клиентам по WebRTC или LL-HTTP. Он же отвечает за авторизацию, накладывает водяные знаки и может запускать серверный ИИ. Именно здесь уходит большая часть времени инженеров при разработке серьёзной VMS.

Плоскость бэкенда. Пользовательские аккаунты, матрица ролей и прав, система уведомлений, индекс записей, журнал аудита, биллинг и админка. Обычно сервисы запускаем на Node.js или Kotlin поверх Postgres, Redis используем для хранения горячих данных, S3-совместимое объектное хранилище — для клипов, а шину событий (RabbitMQ или NATS) — для рассылки оповещений.

Плоскость Android-приложения. Kotlin, Jetpack Compose для интерфейса, ExoPlayer или собственный пайплайн на MediaCodec для видео, FCM для уведомлений, OkHttp + Retrofit для работы с бэкендом, WebRTC SDK для низкой задержки и небольшой объём TensorFlow Lite, если нужна классификация на устройстве. Архитектура — MVVM с чистым доменным слоем; CI/CD через GitHub Actions или Bitrise в Play Console.

Архитектура с медиашлюзом (вместо «камера — напрямую — приложение») оправдана, когда: у вас более 50 камер, камеры от разных производителей, операторы работают удалённо за пределами локальной сети, используется серверный ИИ или есть требования к комплаенсу, например, единая точка авторизации и аудита.

Мини-кейс: запуск видеонаблюдения в ритейле с доступом с телефона

Контекст. Оператор ритейл-безопасности с парком более 10 000 площадок, добавленных только в 2025 году, нуждался в мобильном доступе для менеджеров магазинов и региональных руководителей по предотвращению потерь. Десктоп-клиент работал, но менеджеры таскали с собой отдельное оборудование и использовали планшетные приложения, а задержки в устаревших мобильных дашбордах серьёзно мешали расследованиям. На столе лежал KPI по снижению shrink — платформе уже приписывали сокращение shrink на 30% за первый квартал в национальных продуктовых сетях.

Что мы выпустили. Мобильный VMS-сценарий поверх существующего видеопайплайна (FFmpeg, MediaMTX, MongoDB) с архитектурой медиашлюза SIP/WebRTC, которую мы уже использовали в параллельном проекте по управлению облачным видео. Мобильный интерфейс показывал AI-оповещения о движении менее чем за 30 секунд, связывал POS-транзакции с видеотайлами и позволял менеджерам собирать видео-доказательства с проверяемым хешем. Мы переиспользовали мост SIP-WebRTC, разработанный ранее для IP-домофонов, чтобы держать задержку под контролем.

Результат. Заказчики из сегмента быстрого питания зафиксировали на 40% меньше случаев ухода без оплаты. Региональная банковская ассоциация оценила предотвращённое мошенничество в более чем 375 млн ₽. Среднее время установки новой площадки сократилось примерно на 60% по сравнению с устаревшим стеком. Главная мобильная победа — менеджеры перестали направлять в поддержку тикеты «не вижу камеру на телефоне»: теперь оповещение и воспроизведение находятся в одном тапе, а не разбросаны по трём приложениям и требуют подключения к VPN.

Модель стоимости: реальные бюджеты для MVP, среднего уровня и энтерпрайза

Это реалистичные диапазоны для сеньорного агентства в 2026 году при использовании агент-ассистированного инжиниринга. Они рассчитаны на одну команду, современный Android-стек (Kotlin, Compose, ExoPlayer) и ONVIF + RTSP + WebRTC через медиашлюз. К этим цифрам добавляйте 20–30% для федеральных и NDAA-проектов, работы в мультирегиональных облаках или при жёстких требованиях к доступности и локализации.

Уровень Что входит Типичный срок Реалистичный диапазон
MVP RTSP/ONVIF-лайв, сетка из 4–9 тайлов, базовое воспроизведение, FCM-уведомления, вход и выход, одна VMS 8–12 недель 1,8–3,3 млн ₽
Средний уровень Всё из MVP + PTZ, talk-back, ролевая матрица, таймлайн событий, две VMS-интеграции, офлайн-кэш 14–18 недель 4,1–6,7 млн ₽
Энтерпрайз Всё из «среднего» + мультитенантность, white-label, события edge AI, MDM-киоск, SSO, аудит-журнал, инструменты для GDPR/HIPAA 22–30 недель 8,2–13,5 млн ₽

Куда уходит бюджет на самом деле — это редко «камерная сетка». Он тратится на документацию для комплаенса, надёжность обновлений, интеграционное тестирование на реальных камерах и на решение множества мелких проблем из-за разнообразия Android-устройств. Закладывайте 25–35% бюджета на тестирование и пилотные запуски, а не на разработку новых функций.

Фреймворк решений — выберите путь за пять вопросов

Если на эти пять вопросов вы можете ответить на одном листе бумаги — ваш скоуп в порядке. Если нет — это и есть встреча, которую стоит провести до подписания ТЗ.

Q1. Сколько камер, сколько площадок, сколько одновременно работающих операторов? Если камер меньше 50 и одна площадка — приложение от вендора или его SDK почти всегда выгоднее. Если более 200 камер, несколько площадок или 10 и более операторов одновременно — кастомная архитектура начинает окупаться.

Q2. Одна VMS или много? Один вендор — оболочка над его SDK. Много вендоров или неизвестные будущие — ONVIF-first кастомный клиент. Смесь вендоров через их SDK ко второму году превращается в ловушку обслуживания.

Q3. Где живёт AI? На камере, в облаке или на телефоне. Ответ влияет на трафик, задержку, вопросы приватности и лицензирования. Большинству проектов нужен осознанный выбор для каждого сценария — а не одно универсальное решение.

Q4. Какие режимы комплаенса в скоупе? NDAA, GDPR, HIPAA, BIPA, SOC 2, ISO 27001. Каждый из них добавляет недели к срокам. Недооценка этого — главная причина расползания скоупа в корпоративных VMS-проектах.

Q5. Кто будет это сопровождать ближайшие три года? Если ответ «нанятое нами агентство» — закладывайте 15–25% от стоимости разработки в год. Если «наша внутренняя команда» — обязательно включите в проект передачу знаний и контрольные точки для code review.

Подводные камни, которых стоит избегать

Вот пять мест, где проекты регулярно теряют недели. Ничего сложного — но всё это легко упустить из вида в ТЗ.

1. RTSP-over-UDP без TCP-фоллбэка. UDP отлично работает в локальной сети, но совершенно непригоден для интернета. Если ваш медиашлюз не поддерживает переключение на TCP, первый I-кадр будет ждать пакет, который так и не придёт, и пользователь увидит чёрный экран. Примерно треть обращений в поддержку по мобильным VMS связано именно с этой проблемой.

2. Недооценка лицензирования H.264 и H.265. Лицензионные сборы по H.264 в 2026 году резко выросли: вместо фиксированной платы в 7,5 млн ₽ теперь действует многоуровневая система, при которой OTT-платформам первого уровня грозят выплаты до 337 млн ₽ в год. Патенты на H.265 находятся в трёх разных патентных пулах. Если вы выпускаете коммерческое приложение, способное декодировать любой из этих стандартов, обязательно проконсультируйтесь с юристом по медиа-лицензиям до запуска — не полагайтесь на то, что лицензия от производителя камер автоматически покрывает интересы вашего клиента.

3. Пропуск ротации FCM-токенов. Приложения, в которых не реализована полноценная обработка onNewToken(), постепенно перестают получать уведомления на 5–10% устройств в месяц. Пользователь ничего не замечает — пока при аудите не обнаружат пропущенные оповещения о событиях на ключевых камерах.

4. Отключённый в debug-сборках certificate pinning, который забыли вернуть. Классика. Под QA настроили Charles-прокси, пиннинг выключили, чтобы тесты проходили, флаг отключения дожил до release-сборки. Пентестеры и охотники за багами обожают такое. Решение — конфиги пиннинга, привязанные к варианту сборки, плюс CI, который роняет релиз, если пиннинг выключен.

5. NDAA-дрейф парка камер. Заказчик подключает OEM-камеру на базе SoC HiSilicon. Комплаенс нарушается незаметно. Решение — публиковать разрешённый список оборудования, отказываться от камер, не прошедших проверку по SoC, и проводить аудит парка раз в квартал. В нашем обзоре ведущих производителей систем видеонаблюдения указано, кто из них открыто делится своим статусом по NDAA.

KPI, которые имеют значение: качество, бизнес, надёжность

Любому Android-приложению для VMS нужен инструментированный дашборд KPI с первой недели пилота, а не после запуска. Три блока с пороговыми значениями — минимальная планка для релиза.

KPI по качеству. Время до первого кадра — менее 1 с в локальной сети, менее 2 с в глобальной сети. Доля пропущенных кадров — менее 3% при обычной нагрузке, менее 1% для оповещений о безопасности. Время реакции PTZ — менее 500 мс. Сквозная задержка передачи — менее 5 с на 95-м процентиле. Холодный старт — менее 3 с на устройстве среднего уровня.

Бизнес-метрики. Количество активных операторов в день, среднее число тайлов за сессию, количество обработанных оповещений за смену, число экспортов видео-доказательств в неделю, время до первого действия по оповещению высокого уровня. Эти показатели директор по операциям показывает финансовому директору.

KPI по надёжности. Сессии без сбоев — более 99,5% (Crashlytics). Доля ложных оповещений о движении — менее 10% (настраивается для каждой камеры). Успешная доставка пуш-уведомлений — более 98%. Успешное переподключение после смены сети — более 99%. Разряд батареи — менее 8% в час при одном активном тайле.

Нужно второе мнение по предложению вендора?

Пришлите ТЗ, схему архитектуры и список камер. Укажите, что оставить, что убрать и чего не хватает — без оплаты за анализ.

Позвоните нам → Напишите нам →

Когда НЕ стоит делать кастомное Android-приложение для VMS

Кастомная разработка Android-приложения для VMS — дорогое удовольствие и неправильный выбор для заметной доли покупателей. Примерно одному из четырёх обращающихся мы говорим, что кастом не стоит этих денег, — и потом они нас благодарят. Отойдите от кастома, когда:

Вы работаете с одним вендором VMS и менее чем 50 камерами. Мобильное приложение вендора вместе с тонким слоем кастомных дашбордов поверх его REST API дадут вам 95% ценности за 10% стоимости.

Единственный дифференциатор — брендинг. White-label дешевле кастомной разработки. Большинство корпоративных вендоров предлагают такую опцию. Если цель сборки — просто «показать наш логотип на экране входа», выбирайте white-label.

Вы не сможете финансировать сопровождение. Android развивается быстро. Уровни API устаревают. FCM обновляется. Правила для foreground-сервисов меняются раз в год. Если вы не готовы тратить около 1,8–3,7 млн ₽ в год на поддержку и обновления под платформу — не начинайте.

Ваш срок — меньше восьми недель. MVP, который можно выпустить за восемь недель, возможен, но всё, что короче, — это в лучшем случае просто ребрендинг чужого приложения. Мы скажем вам об этом уже на первом звонке.

FAQ

Сколько времени занимает разработка кастомного Android-приложения для VMS?

Сфокусированный MVP с живым просмотром, воспроизведением, пушами и одной интеграцией с VMS выпускается за 8–12 недель. Средний уровень с поддержкой PTZ, talk-back, ролевой матрицей и двумя интеграциями с VMS — 14–18 недель. Энтерпрайз-версия с мультитенантностью, edge AI, MDM и SSO — 22–30 недель. Аудиты по комплаенсу добавляют по четыре недели на каждый режим.

Будет ли приложение работать с нашей текущей установкой Milestone, Genetec или Avigilon?

Да, но путь интеграции у всех разный. Milestone предоставляет XProtect Mobile SDK; Genetec предлагает мобильные компоненты Security Center; Avigilon использует закрытое облако с интеграцией через документированный REST. У Bosch, Hanwha и Axis входная точка — обычно ONVIF Profile S/ G. На сертификацию и полевые тесты по каждой VMS закладывайте две-три недели.

Сколько камер одновременно потянет один Android-планшет?

От четырёх до девяти живых потоков 720p/30fps — комфортно на современном планшете (Galaxy Tab S, Pixel Tablet). Шестнадцать тайлов требуют понижения разрешения — до 480p и ниже на каждый. Воспроизведение архива намного легче: тот же планшет спокойно просматривает записи с 100+ камер. Реальный предел задаёт тепловое торможение, а не пропускная способность сети.

Нужно ли сквозное шифрование и стоит ли оно прироста задержки?

Если вы работаете с персональными данными, здравоохранением или регулируемым ритейлом — планируйте шифрование заранее. Грамотно реализованный аппаратно-ускоренный AES-ГCM добавляет задержку менее 50 мс. Сложнее обстоит дело с операционной частью: управление ключами, восстановление при утере устройств и потеря возможности поиска на сервере при настоящем E2EE. Выделите на это подпроект на 4–8 недель.

Какой уровень Android API выбрать в 2026 году?

Компилируйте под API 35 (Android 15), а как минимум таргетируйте API 33 (Android 13). Большинство проблем с foreground-сервисами и broadcast-ресиверами возникает в диапазоне API 31–35 — обязательно тестируйте на каждом уровне. Ниже API 30 вы теряете доступ к важным платформенным возможностям, которые пользователи будут считать стандартными: современный photo picker, изменения в плитках быстрых настроек, обновлённые возможности MediaCodec.

Можно ли запустить это в режиме киоска или MDM-блокировки на охранных планшетах?

Да. Используйте Android Enterprise с управляемым развёртыванием через Google Play, а также DevicePolicyManager для режима киоска и блокировки задач (lock-task). Отключайте кнопки «Домой» и «Недавние приложения», управляйте закреплением приложений, задавайте таймаут экрана и обеспечьте удалённое отключение устройств в случае их потери или кражи. Добавьте к срокам две-три недели на настройку MDM и проведение пилотного тестирования.

Какие работы по комплаенсу и аудиту нужно планировать на постоянной основе?

GDPR: хранение данных менее 90 дней без дополнительного обоснования, аудит доступа к видео, наличие эндпоинтов для удаления. HIPAA: логирование доступа к PHI, управление доступом по ролям, шифрование данных в состоянии покоя, ежегодный аудит. BIPA: получение явного согласия на использование биометрических данных, запрет на их продажу и передачу третьим лицам, процедура отказа от участия. NDAA: задокументированные allow-списки для оборудования и облачных платформ, исключение устройств Hikvision и Dahua, запрет на переупаковку компонентов HiSilicon. На каждый крупный релиз закладывайте четыре недели на тестирование и одну неделю на проверку соответствия требованиям.

Стоит ли поддерживать Android Auto, Wear OS, Android TV и складные устройства?

Складные устройства получаются «бесплатно», если строить интерфейс на Compose с адаптивной разметкой. Android TV окупается только при работе с диспетчерскими системами или дашбордами для гостиных: в середине 2024 года Google сообщала о 220 миллионах ежемесячно активных устройств на Android TV OS и росте на 47% год к году — аудитория реальная, но узкая. Wear OS для VMS редко окупается дальше простых уведомлений. Android Auto не разрешает использовать живое видео по политике Google. Все эти направления стоит выносить отдельными фазами.

Мобильные приложения для IP-камер

Создание мощных мобильных приложений для IP-камер

Глубокий технический спутник: ONVIF-обнаружение, настройка RTSP, команды управления PTZ и особенности аудио talk-back.

Облачная VMS

Архитектура безопасного облачного управления видео

Как спроектировать бэкенд, с которым общается Android-клиент: шифрование, аудит-логи, мультитенантные паттерны.

Edge AI

Модели детекции аномалий для видеонаблюдения

Выбор подходящего семейства моделей для событий, которые отображает ваше VMS-приложение, — и что из этого работает на edge.

Умные домофоны

Умные домофоны на Android

Двусторонний звук, мосты SIP-WebRTC и архитектурный паттерн, который мы используем в проектах с домофонами.

Ритейл-безопасность

Продвинутое видеонаблюдение для ритейла

Как интеграция POS и видео, настройка ложных срабатываний и BIPA формируют требования к Android-клиенту VMS в ритейле.

Готовы протестировать своё кастомное Android-приложение для VMS?

Кастомное Android-приложение для VMS оправдано, когда вы работаете с несколькими заказчиками или несколькими системами VMS, когда в вашем предложении задействован ИИ или когда требования по соответствию нормам требуют контроля за маршрутом данных. Ниже этой планки — приложение от вендора или обёртка над его SDK — более разумный выбор. В любом случае путь остаётся одинаковым: ONVIF с стороны камер, медиашлюз посередине, аккуратный Android-клиент сверху и дашборд KPI, который работает с первой недели.

Если вы сейчас оцениваете проект, самое полезное, что можно сделать на этой неделе — выписать ответы на пять вопросов из фреймворка выше. Если они выдержат двадцать минут внутреннего давления, у вас есть реальный проект. Если нет — это та встреча, в которой мы хотим оказаться: до подписания ТЗ, а не после.

Принести скоуп Android VMS на рабочую встречу?

Тридцать минут. Мы приведём двух сеньорных инженеров со шрамами от разработки кастомных Android-приложений для VMS, реальный набросок архитектуры и реалистичный бюджет, который можно показать финдиректору.

Позвоните нам → Напишите нам →

  • Технологии