Интеграция UWB с Nearby Interaction в iOS-приложение

Внедрение UWB через Nearby Interaction в iOS-приложения UWB (Ultra Wideband) — не Bluetooth, не iBeacon и не GPS. Это технология с сантиметровой точностью: приложение получает `distance` в метрах с точностью ±10–15 см и `direction` — 3D-вектор к устройству в пространстве (на iPhone 14 Pro и новее

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

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

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

Услуги, которые мы предлагаем
Показано 1 из 1Все 1734 услуг
Интеграция UWB с Nearby Interaction в iOS-приложение
Средний
~5 дней

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

Часто задаваемые вопросы

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

  • 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

Внедрение UWB через Nearby Interaction в iOS-приложения

UWB (Ultra Wideband) — не Bluetooth, не iBeacon и не GPS. Это технология с сантиметровой точностью: приложение получает distance в метрах с точностью ±10–15 см и direction — 3D-вектор к устройству в пространстве (на iPhone 14 Pro и новее через двунаправленные антенны). UWB незаменим для точечного наведения в шеринге файлов и платежах, поиска потерянных предметов (как AirTag), управления умным домом и AR-приложений с пространственной привязкой. Мы имеем многолетний опыт в разработке iOS-приложений с UWB и гарантируем соблюдение App Store Review Guidelines и конфиденциальность данных.

UWB-сессия требует разрешения пользователя (NSNearbyInteractionAllowOnceUsageDescription), и Apple строго контролирует использование данных о местоположении. Тестирование UWB возможно только на физических устройствах — симулятор не поддерживает чип U1/U2. Поэтому мы проводим тестирование на реальных iPhone, что гарантирует корректную работу.

Сравнение с Bluetooth

Bluetooth даёт точность порядка 1 метра и не определяет направление. UWB точнее в 100 раз — ±10 см против метра, что критично для навигации внутри помещений и AR. Однако UWB работает только на расстоянии до 9 м, не поддерживает фоновый режим и требует прямой видимости. Выбор технологии зависит от сценария: для широкого охвата — Bluetooth, для точечных операций — UWB.

Технология Точность Дальность Потребление Фоновый режим
UWB ±10 см до 9 м ~100 мВт Нет
Bluetooth ~1 м до 100 м ~10 мВт Да
GPS ~5 м неограниченно ~50 мВт Да

Как настроить сессию Nearby Interaction

Основная компонента — NISession. Создайте сессию, установите делегат и запустите с конфигурацией NINearbyPeerConfiguration. Код ниже демонстрирует базовую реализацию:

import NearbyInteraction import MultipeerConnectivity class UWBSessionManager: NSObject, NISessionDelegate { private var niSession = NISession() private var peerToken: NIDiscoveryToken? override init() { super.init() niSession.delegate = self } func startSession(with peerToken: NIDiscoveryToken) { let config = NINearbyPeerConfiguration(peerToken: peerToken) config.isCameraAssistanceEnabled = true niSession.run(config) } func session(_ session: NISession, didUpdate nearbyObjects: [NINearbyObject]) { guard let peer = nearbyObjects.first else { return } if let distance = peer.distance { print("Distance: \(distance) m") } if let direction = peer.direction { print("Direction: \(direction)") } } func session(_ session: NISession, didInvalidateWith error: Error) { // Обработка ошибок } } 

Обмен токенами через MultipeerConnectivity — интеграция uwb с

Самый распространённый подход для P2P: используем MCSession для передачи токена, затем запускаем NISession. Важно: NIDiscoveryToken нельзя передать как строку — кодируем через NSKeyedArchiver:

let tokenData = try NSKeyedArchiver.archivedData( withRootObject: niSession.discoveryToken!, requiringSecureCoding: true ) mcSession.send(tokenData, toPeers: peers, with: .reliable) 

На принимающей стороне:

let token = try NSKeyedUnarchiver.unarchivedObject( ofClass: NIDiscoveryToken.self, from: data ) 

Попытка передать токен через JSON не работает — NIDiscoveryToken не Encodable.

Какие ошибки могут возникнуть при интеграции?

Обработка ошибок сессии — критическая часть. Вот типичные ошибки и их решения:

Код ошибки Описание Действие
userDidNotAllow Пользователь отклонил разрешение Запросить разрешение заново
resourceUsageLimitReached Превышен лимит ресурсов (много сессий) Перезапустить сессию
sessionFailed Критический сбой Переинициализировать сессию

Почему Camera Assistance так важна?

На iPhone 14 Pro и 15 серии доступен режим isCameraAssistanceEnabled = true. Система показывает нативный AR overlay с указателем направления. Активируется только при наличии разрешения на камеру. Добавляет задержку ~200 мс до получения первых direction-данных, но значительно улучшает пользовательский опыт.

Что входит в работу

  • Анализ сценария и проверка совместимости устройств (NIDeviceCapability)
  • Проектирование архитектуры: выбор способа обмена токенами
  • Реализация NISession с конфигурацией P2P или для аксессуаров
  • Обработка обновлений расстояния/направления в реальном времени
  • Тестирование на двух физических устройствах (симулятор не поддерживает UWB)
  • Деплой с соблюдением App Store Review Guidelines
  • Документирование и передача исходного кода

Процесс работы

  1. Аналитика — разбираем сценарий, проверяем совместимость.
  2. Проектирование — выбираем способ передачи токена (MultipeerConnectivity, Bluetooth, REST).
  3. Реализация — пишем NISession с конфигурацией и делегатом.
  4. Тест — запускаем на двух реальных устройствах (симулятор не поддерживает UWB).
  5. Деплой — публикуем с соблюдением правил App Store.

Сроки и стоимость

Ориентировочно 5 дней на типовой P2P-проект с MultipeerConnectivity: 1 день аналитика и выбор архитектуры, 2 дня реализация сессии и обмен токенами, 1 день тестирование на двух физических iPhone, 1 день оформление документации и передача. Для проектов с аксессуарами (UWB-чип третьей стороны) или Camera Assistance AR overlay срок увеличивается до 7–8 дней. Стоимость рассчитывается индивидуально после анализа сценария. Свяжитесь с нами — мы оценим ваш проект и предложим оптимальное решение.

Список устройств с поддержкой UWB
  • iPhone 11, 12, 13, 14, 15 всех моделей (кроме SE)
  • Apple Watch Series 6 и новее
  • HomePod mini и HomePod (2-го поколения)
  • Аксессуары с чипом U1/U2

Получите консультацию по интеграции UWB — поможем решить задачу с сантиметровой точностью. Если вам нужна интеграция UWB, свяжитесь с нами для оценки проекта.

Nearby Interaction Documentation — официальная документация Apple.