ARCore для Jetpack XR предоставляет мощные возможности восприятия, позволяющие вашему приложению понимать реальный мир с помощью различных API. Некоторые из этих API помогают улучшить иммерсивный опыт на таких устройствах, как XR-шлемы и проводные XR-очки, другие – дополненную реальность на таких устройствах, как ИИ-очки, а третьи – удобство использования приложений на всех типах устройств Android XR.
Например, вы можете использовать ARCore для Jetpack XR, чтобы получать данные о плоскостях, привязывать контент к фиксированному местоположению в пространстве или использовать геопространственную позу, чтобы привязывать контент к местоположению в реальном мире.
Добавьте зависимости библиотеки
Прежде чем начать использовать функции восприятия в приложении XR, добавьте необходимые зависимости в зависимости от типа функций приложения, которые вы улучшаете с помощью AR.
Как получить доступ к сеансу
Функции восприятия в ARCore для Jetpack XR зависят от Session, который использует среду выполнения Jetpack XR.
Способ доступа приложения к сеансу зависит от того, какие функции восприятия вы хотите добавить:
- Если вы хотите улучшить иммерсивный режим с помощью пространственного интерфейса, используя Jetpack Compose для XR, узнайте, как получить доступ к сеансу из Jetpack Compose для XR.
- Во всех остальных случаях вы можете создать сеанс с помощью Jetpack XR Runtime, как описано в следующем разделе этой страницы.
Как создать сеанс с помощью Jetpack XR Runtime
Чтобы создать сеанс, передайте Context в метод create(). Context может быть Activity на XR-устройствах с эффектом погружения или мобильных устройствах, а также проецируемым контекстом на умных очках.
Создание сеанса ARCore может быть ресурсоемкой задачей, поэтому его следует обрабатывать в фоновом режиме, как показано в следующем примере:
lifecycleScope.launch { when (val result = Session.create(context)) { is SessionCreateSuccess -> { val xrSession = result.session // ... } else -> TODO(/* A different unhandled exception was thrown. */) } }
Функция create() может использовать необязательный параметр LifecycleOwner, который позволяет управлять жизненным циклом сеанса с помощью другого LifecycleOwner. Жизненный цикл LifecycleOwner должен начинаться и заканчиваться в рамках предоставленного контекста, иначе может произойти утечка Session.
Как настроить сеанс
Некоторые функции могут быть отключены по умолчанию, и для их работы требуется настройка. Чтобы настроить сеанс, используйте configure() и укажите параметры конфигурации, необходимые для Session. Подробную информацию о настройке различных функций дополненной реальности можно найти на соответствующих страницах.
Дальнейшие действия
После того как в приложении будет запущен сеанс, вы можете использовать его, чтобы улучшить работу приложения на разных устройствах XR.
- Как обнаруживать плоскости с помощью ARCore для Jetpack XR
- Как создавать привязки с помощью ARCore для Jetpack XR
- Как использовать ARCore для Jetpack XR, чтобы работать с руками
- Как добавить в приложение отслеживание лиц с помощью ARCore для Jetpack XR
- Как получить информацию о глубине в приложении с помощью ARCore для Jetpack XR
- Как отслеживать положение устройства с помощью ARCore для Jetpack XR