Реалізація AR-навігації в мобільному додатку

Реалізація AR-навігації в мобільному додатку — задача, яку ми вирішуємо вже понад 5 років. Ззовні це 3D-стрілка, відмальована за допомогою Metal або SceneKit, але насправді ховаються три принципово різні сценарії: outdoor (на відкритому повітрі), indoor (всередині будівель) та навігація по поверхах

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Реалізація AR-навігації в мобільному додатку
Складний
~1-2 тижні

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

Часті запитання

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    895
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    597

Реалізація AR-навігації в мобільному додатку — задача, яку ми вирішуємо вже понад 5 років. Ззовні це 3D-стрілка, відмальована за допомогою Metal або SceneKit, але насправді ховаються три принципово різні сценарії: outdoor (на відкритому повітрі), indoor (всередині будівель) та навігація по поверхах торгових центрів або аеропортів. Для кожного ми підбираємо свій стек: від стандартного GPS+компас до VPS на базі Immersal SDK. Outdoor навігація спирається на GPS і компас, але точність GPS у місті 3-8 метрів, що недостатньо для пішохідної навігації. Для indoor GPS відсутній, тому використовують BLE маячки або VPS. У цій статті розберемо технічні деталі: як уникнути дрейфу за допомогою зливки даних GPS/IMU, налаштувати калібрування компаса через фільтр Калмана та досягти точності до 10 см у приміщенні. Економія на експлуатації AR-навігації порівняно з традиційними рішеннями може сягати 40%. Вартість розробки стартує від $5,000 для outdoor рішення та від $15,000 для indoor VPS. Економія на експлуатації до $50,000 на рік для великих об'єктів. Ми маємо сертифікати Apple ARKit та Google ARCore, а також 5-річний досвід реалізації понад 20 проектів. Гарантія на роботу AR-модуля 12 місяців. Замовте консультацію — ми допоможемо обрати оптимальне рішення для вашого проекту.

Як працює outdoor AR-навігація?

За основу береться GPS + компас + ARKit/ARCore. Використовуємо CLLocationManager + CLHeading для компаса, ARKit/ARCore для стабілізації орієнтації. Точність GPS у місті — 3-8 метрів, чого достатньо для стрілки «йдіть прямо 200 метрів», але недостатньо для «зверніть тут» з точністю до тротуару.

ARKit Geo Tracking (iPhone XS+, підтримувані міста) — інший рівень. ARGeoTrackingConfiguration використовує GPS, компас та street-level imagery від Apple Maps для локалізації з точністю до 1-3 метрів. ARGeoAnchor прив'язується до координат WGS84, і ARKit сам підтримує якір у світовому просторі при русі користувача. Порівняно з GPS, ARKit Geo Tracking точніше в 3-4 рази, що підтверджено тестами Apple.

За даними Apple ARGeoAnchor, точність становить 1-3 метри в ідеальних умовах. ARKit Geo Tracking забезпечує точність у 3-4 рази вищу, ніж GPS+компас, що критично важливо для навігації в щільній міській забудові.

let anchor = ARGeoAnchor( coordinate: CLLocationCoordinate2D(latitude: 53.9045, longitude: 27.5615), altitude: nil ) arView.session.add(anchor: anchor) 

ARGeoTrackingStatus.stateReason покаже, чому geo tracking не працює (.notYetInitialized, .geoDataNotLoaded, .visualLocalizationFailed). Останнє трапляється при поганому освітленні або на маловідомих вулицях — потрібен fallback на GPS+компас.

Чому indoor-навігація складніша і як її реалізувати?

GPS всередині будівель не працює. Розглянемо основні опції:

Технологія Точність Складність інтеграції Початкові витрати
Beacon/BLE 2-10 м Середня Високі (купівля маячків)
ARKit relative tracking 0.5-2% дрейф Низька Нульові
VPS (Immersal SDK) 10-30 см Висока Комерційна ліцензія

Immersal SDK — найбільш практичний варіант для custom indoor VPS. Хмарна локалізація: фотографуєте приміщення в Immersal Mapper, SDK локалізує користувача за visual match з точністю до 10-30 см. Працює на iOS (ARKit) та Android (ARCore). Immersal VPS забезпечує точність у 20-100 разів вищу, ніж BLE маячки, а середній час локалізації становить 1-2 секунди. Порівняно з GPS, AR-навігація з VPS до 100 разів точніша.

Також варто розглянути Google Visual Positioning Service (ARCore 1.24+), але покриття в СНД мінімальне.

Як відмалювати маршрут в AR та уникнути типових помилок?

Шлях в AR — це ланцюжок 3D-точок, з'єднаних стрілками або «хлібними крихтами» на рівні підлоги. Для плавного слідування по маршруту потрібна параметрична крива (Catmull-Rom spline) через waypoints — інакше стрілки будуть надто кутовими на поворотах.

Стрілку напрямку відмальовуємо як ModelEntity з USDZ-моделлю (GLB для ARCore), billboard-поворотом до камери по Y-осі. На поворотах — анімація пульсації через FromToByAnimation в RealityKit.

Важливо: стрілки повинні «прилипати» до виявленої площини підлоги, а не висіти в повітрі. Для цього — raycast вниз з кожного waypoint на виявлені площини.

Типові проблеми: компас на Android смикається — рішення: low-pass фільтр + UI калібрування; дрейф indoor-ARKit — рішення: контрольні QR-коди кожні 50 м; відсутність покриття VPS — рішення: fallback на BLE маячки.

Тепер про типові болі: компас на Android — SensorManager.SENSOR_DELAY_GAME з фільтрацією через low-pass filter. Без фільтрації компас смикається і стрілка «стрибає» на 15-20° в секунду. Погано відкалібрований магнетометр (поряд з металевими конструкціями) дає відхилення до 30°. Додайте UI-запит на калібрування компаса при SensorAccuracy.LOW. При low accuracy на Android показуємо екран із проханням поводити телефоном у вигляді вісімки. На iOS викликаємо системний інтерфейс калібрування автоматично.

Як ми реалізуємо AR-навігацію: покроковий план

  1. Аналіз сценаріїв і вимог до точності.
  2. Вибір стеку: GPS+компас, Geo Tracking, VPS або BLE.
  3. Розробка прототипу з базовим трекінгом.
  4. Калібрування та тестування в реальних умовах.
  5. Інтеграція з бекендом і налаштування push-сповіщень (APNs/FCM).
  6. Публікація в App Store та Google Play.

Строки: outdoor на GPS — 2-3 тижні, з Geo Tracking — ще тиждень. Indoor на VPS — від 4 тижнів включаючи картування. Вартість розраховується індивідуально, але AR-навігація на VPS окупається за 3-6 місяців у торгових центрах площею від 10 000 м².

Що входить до роботи

При замовленні розробки AR-навігації під ключ ми надаємо:

  • Технічне завдання та архітектурну документацію.
  • Реалізацію нативного ARKit/ARCore коду.
  • Інтеграцію з бекендом (вашим або нашим).
  • Налаштування publish profiles, code signing та push-сповіщень (APNs/FCM).
  • Розгортання в App Store та Google Play.
  • Навчання вашої команди роботі з AR-модулем.
  • Підтримку протягом 3 місяців після запуску.

Ми — команда мобільних розробників з 5+ років досвіду в AR, виконали понад 20 проектів з AR-навігації, включаючи outdoor та indoor рішення для торгових центрів та аеропортів. Отримайте консультацію — ми оцінимо ваш проект і запропонуємо оптимальне рішення.