Geospatial API использует комбинацию данных VPS и GPS для создания высокоточных геопространственных поз. API можно использовать в любом месте, где устройство может определить свое местоположение:
- В районах с низкой точностью GPS, таких как закрытые помещения и плотная городская среда, API будет полагаться на покрытие VPS для создания высокоточных поз.
- На открытом воздухе с небольшим количеством препятствий или без них Geospatial API может использовать доступные данные о местоположении GPS для создания геопространственных поз с высокой точностью.
Вы можете определить доступность VPS в заданной горизонтальной позиции до начала сеанса AR и использовать ее для создания более конкретных возможностей — например, для отображения кнопки «Войти в AR» только тогда, когда VPS доступен.
Включите API ARCore
Ваше приложение должно включить API ARCore для проверки доступности VPS.
Проверьте доступность VPS в вашем приложении
Geospatial API можно использовать в любом месте, где устройство может определить свое местоположение. Если ваш опыт AR зависит от покрытия VPS, вы можете использовать AREarthManager.CheckVpsAvailabilityAsync()
для получения VpsAvailabilityPromise
— асинхронной задачи, которая проверяет доступность VPS в заданной горизонтальной позиции. Получив VpsAvailabilityPromise
, вы можете получить его результат путем опроса.
Опрос результатов
Используйте VpsAvailabilityPromise.State
, чтобы получить состояние InterruptiblePromise
. Есть три разных состояния:
-
Pending
: операция еще не завершена, поэтому результат неизвестен. -
Cancelled
: операция была отменена с помощьюVpsAvailabilityPromise.Cancel()
. Любой зарегистрированный обратный вызов никогда не будет вызван. -
Done
: операция завершена. ИспользуйтеVpsAvailabilityPromise.Result
для получения результата.
Вы можете продолжать проверку VpsAvailabilityPromise.State
, пока задача не будет завершена.
Отменить InterruptiblePromise
Используйте VpsAvailabilityPromise.Cancel()
чтобы попытаться отменить InterruptiblePromise
. Из-за параллелизма потоков ваша попытка отмены может оказаться неудачной.
Используйте Geospatial API без покрытия VPS
Geospatial API также можно использовать в регионах, где нет покрытия VPS. На открытом воздухе с небольшим количеством препятствий или без них GPS может быть достаточно для определения позы с высокой точностью.
Что дальше
- Получите геопространственную позу камеры устройства, чтобы определить точное местоположение устройства пользователя в реальном мире.