Interfejs Session to główny interfejs funkcji przestrzennych
w Twojej aplikacji. Każda przestrzenna Activity musi utworzyć i przechowywać instancję
Session. Gdy aplikacja utworzy sesję, może używać interfejsów Session
do tworzenia przestrzennych elementów treści, takich jak panele czy modele 3D, a także
do ustawiania środowiska przestrzennego, określania pozycji użytkownika i kotwiczenia
treści w świecie rzeczywistym.
Uzyskiwanie dostępu do sesji z Jetpack Compose for XR
Gdy używasz Jetpack Compose for XR, sesja jest tworzona automatycznie i można uzyskać do niej
dostęp za pomocą LocalSession.current. Przyjrzyj się temu przykładowi:
@Composable fun ComposableUsingSession() { val session = LocalSession.current }
Uzyskiwanie dostępu do sesji z Jetpack XR Runtime
Jeśli tworzysz elementy przestrzenne z biblioteki Jetpack SceneCore, musisz utworzyć sesję.
Aby utworzyć sesję, przekaż [Context] do create()
metody. Ten Context może być Activity na urządzeniach z XR lub
urządzeniach mobilnych albo kontekstem projekcyjnym.
Utworzenie sesji ARCore może być czasochłonne i powinno być wykonywane w tle, jak pokazano w tym przykładzie:
when (val result = Session.create(context)) { is SessionCreateSuccess -> { val xrSession = result.session // ... } else -> TODO(/* A different unhandled exception was thrown. */) }
Gdy aktywność sesji zostanie zniszczona, wszystkie przestrzenne interfejsy i treści 3D powiązane z tą sesją zostaną zniszczone, a sesja stanie się nieprawidłowa.
Zobacz też
- Sprawdzanie możliwości przestrzennych
- Przechodzenie między HSM a FSM
- Dodawanie środowisk przestrzennych do aplikacji
- Dodawanie modeli 3D do aplikacji