O Session fornece a interface principal para a funcionalidade espacializada
do aplicativo. Cada atividade espacializada precisa criar e manter uma instância
de Session. Depois de criado, o aplicativo pode usar as interfaces Session para
criar entidades de conteúdo espacializadas, como painéis ou modelos 3D, além de definir
um ambiente espacial, identificar a posição do usuário e fixar o conteúdo
no mundo real.
Acessar a sessão do Jetpack Compose para XR
Ao usar o Jetpack Compose para XR, a sessão é criada para você e pode ser
acessada usando LocalSession.current. Confira este exemplo:
@Composable fun ComposableUsingSession() { val session = LocalSession.current }
Acessar a sessão do Jetpack SceneCore
Se você estiver criando entidades espaciais na biblioteca SceneCore, será necessário criar a sessão.
A criação de uma sessão só é possível em um dispositivo Android XR. A tentativa de
criar uma sessão em um dispositivo incompatível vai resultar em uma falha. Para
criar uma sessão, transmita uma atividade ao método create(), conforme mostrado
no exemplo abaixo.
when (val result = Session.create(this)) { is SessionCreateSuccess -> { val xrSession = result.session // ... } else -> TODO(/* A different unhandled exception was thrown. */) }
Quando a atividade de uma sessão é destruída, toda a interface espacial e o conteúdo 3D associado a essa sessão são destruídos e a sessão deixa de ser válida.
Veja também
- Verificar os recursos espaciais
- Transição entre HSM e FSM
- Adicionar ambientes espaciais ao app
- Adicionar modelos 3D ao app