Как улучшить восприятие в приложениях с помощью ARCore для Jetpack XR

Поддерживаемые XR-устройства
Это руководство поможет вам создавать продукты для таких XR-устройств.
XR-шлемы
Проводные XR-очки
Аудио- и
видеоочки

ARCore для Jetpack XR предоставляет мощные возможности восприятия, позволяющие вашему приложению понимать реальный мир с помощью различных API. Некоторые из этих API помогают улучшить иммерсивный опыт на таких устройствах, как XR-шлемы и проводные XR-очки, другие – дополненную реальность на таких устройствах, как ИИ-очки, а третьи – удобство использования приложений на всех типах устройств Android XR.

Например, вы можете использовать ARCore для Jetpack XR, чтобы получать данные о плоскостях, привязывать контент к фиксированному местоположению в пространстве или использовать геопространственную позу, чтобы привязывать контент к местоположению в реальном мире.

Добавьте зависимости библиотеки

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

Как получить доступ к сеансу

Функции восприятия в ARCore для Jetpack XR зависят от Session, который использует среду выполнения Jetpack XR.

Способ доступа приложения к сеансу зависит от того, какие функции восприятия вы хотите добавить:

Как создать сеанс с помощью 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.