Сеанс

Session предоставляет основной интерфейс для пространственной функциональности приложения. Каждое пространственное Activity должно создавать и удерживать экземпляр Session . После создания приложение может использовать интерфейсы Session для создания пространственных сущностей контента, таких как панели или 3D-модели, а также для установки пространственной среды , определения положения пользователя и привязки контента к реальному миру.

Доступ к сеансу из Jetpack Compose для XR

При использовании Jetpack Compose для XR сессия создается для вас и к ней можно получить доступ с помощью LocalSession.current . Смотрите следующий пример:

@Composable
fun ComposableUsingSession() {
    val session = LocalSession.current
}

Доступ к сеансу из Jetpack SceneCore

Если вы создаете пространственные сущности из библиотеки SceneCore, вам необходимо создать сеанс.

Создание сеанса поддерживается только на устройстве Android XR. Попытка создать сеанс на несовместимом устройстве приведет к неудачному результату. Чтобы создать сеанс, передайте действие методу create() , как показано в следующем примере.

when (val result = Session.create(this)) {
    is SessionCreateSuccess -> {
        val xrSession = result.session
        // ...
    }
    is SessionCreatePermissionsNotGranted ->
        TODO(/* The required permissions in result.permissions have not been granted. */)
}

При уничтожении активности сеанса весь пространственный пользовательский интерфейс и 3D-контент, связанный с этим сеансом, уничтожаются, и сеанс становится недействительным.

Смотрите также