Session
為應用程式提供空間化功能的主要介面。每個空間化活動都必須建立並保留 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)
}
當工作階段的活動遭到刪除時,所有與該工作階段相關聯的空間 UI 和 3D 內容都會遭到刪除,且該工作階段將不再有效。