Session는 앱의 공간화된 기능에 기본 인터페이스를 제공합니다. 공간화된 각 Activity는
Session의 인스턴스를 만들고 보유해야 합니다. 앱이 세션을 만든 후에는 Session 인터페이스
를 사용하여 패널 또는 3D 모델과 같은 공간화된 콘텐츠 항목을 만들고
공간 환경을 설정, 사용자 위치를 식별하고 콘텐츠를 실제 세계에 고정할 수 있습니다.
XR용 Jetpack Compose에서 세션 액세스
XR용 Jetpack Compose를 사용하면 세션이 자동으로 생성되며
다음을 사용하여 액세스할 수 있습니다. LocalSession.current 아래 예시를 참조하세요.
@Composable fun ComposableUsingSession() { val session = LocalSession.current }
Jetpack XR 런타임에서 세션 액세스
Jetpack SceneCore 라이브러리에서 공간화된 항목을 만드는 경우 세션을 만들어야 합니다.
세션을 만들려면 [Context] 를 create()
메서드에 전달합니다. 이 Context는 몰입형 XR 기기 또는
휴대기기의 Activity이거나 프로젝션된 컨텍스트일 수 있습니다.
ARCore 세션을 만드는 것은 비용이 많이 드는 작업일 수 있으므로 다음 예와 같이 백그라운드에서 처리해야 합니다.
when (val result = Session.create(context)) { is SessionCreateSuccess -> { val xrSession = result.session // ... } else -> TODO(/* A different unhandled exception was thrown. */) }
세션의 활동이 소멸되면 해당 세션과 연결된 모든 공간 UI 및 3D 콘텐츠가 소멸되고 세션이 더 이상 유효하지 않습니다.