Session
обеспечивает основной интерфейс для пространственных функций приложения. Каждое пространственное действие должно создавать и хранить экземпляр сеанса. После создания приложение может использовать интерфейсы сеанса для создания пространственных объектов контента, таких как панели или 3D-модели, а также задавать пространственную среду , определять положение пользователя и привязывать контент к реальному миру.
Доступ к сеансу из Jetpack Compose для XR
При использовании Jetpack Compose для XR сеанс создается для вас, и доступ к нему можно получить с помощью LocalSession.current
. См. следующий пример:
import androidx.xr.compose.platform.LocalSession
class myActivity : Activity() {
val xrSession = checkNotNull(LocalSession.current)
}
Доступ к сеансу из Jetpack SceneCore
Если вы создаете пространственные объекты из библиотеки SceneCore, вам потребуется создать экземпляр сеанса самостоятельно.
Создание сеанса поддерживается только на устройстве Android XR. В настоящее время, если вы создадите Session
и попытаетесь использовать его на устройстве, отличном от Android XR, вы получите исключение NullPointerException
.
Для каждого действия можно создать только один сеанс. Чтобы создать сеанс, передайте действие методу create
, как показано в следующем примере. Попытка создать сеанс на несовместимом устройстве может привести к ошибкам времени выполнения.
import androidx.xr.scenecore.Session
class myActivity : Activity() {
val xrSession = Session.create(this)
}
Когда активность сеанса уничтожается, весь пространственный пользовательский интерфейс и трехмерное содержимое, связанное с этим сеансом, уничтожаются, и сеанс становится недействительным.
См. также
- Проверьте пространственные возможности
- Переход между HSM и FSM
- Добавьте пространственную среду в свое приложение
- Добавьте 3D-модели в свое приложение