O ARCore para Jetpack XR permite que os apps funcionem com conceitos básicos de realidade aumentada (RA), usando primitivas de compreensão de cena de baixo nível e rastreamento de movimento. Use o ARCore para o Jetpack XR ao criar experiências de RA e precisar usar dados planares ou ancorar conteúdo a um local fixo no espaço.
Entender o ciclo de vida de uma Session
Todos os objetos rastreados pelo ARCore para Jetpack XR precisam ser acessados por um
Session
. Semelhante ao ciclo de vida de uma atividade, os objetos Session
também têm um ciclo de vida que precisa ser mantido de acordo com o uso dos recursos de um
objeto Session
pelo app. Se o app tiver uma única atividade com suporte a XR,
processe o ciclo de vida da Session
usando um componente
com reconhecimento de ciclo de vida.
Acessar um Session
Um Session
precisa ser criado ao usar o ARCore para o Jetpack XR.
Ao usar o Jetpack Compose para XR, use LocalSession
para acessar
a sessão criada para você.
Retomar uma sessão
A retomada de uma sessão precisa ser feita quando o app estiver pronto para processar mudanças de estado
do ARCore para o Jetpack XR. Em muitos casos, isso é feito no callback
onResume()
da atividade, mas o app pode atrasar
o processamento até a interação do usuário.
O snippet de código abaixo mostra um exemplo de como retomar uma sessão.
when (val result = session.resume()) { is SessionResumeSuccess -> { // Session has been created successfully. // Attach any successful handlers here. } is SessionResumePermissionsNotGranted -> { // Request permissions in `result.permissions`. } }
Consulte SessionResumeResult
para saber por que uma Session
pode não ser retomada.
Pausar uma sessão
Quando a atividade for para o segundo plano, pause a Session
usando
[Session.pause()
][Session.pause]. Pausar uma sessão interrompe temporariamente o rastreamento
até que a sessão seja retomada, mantendo o estado do sistema de percepção.
Destruir uma sessão
Para descartar permanentemente um Session
, use
[Session.destroy()
][Session.destroy]. Isso libera os recursos usados pela
sessão e destrói todos os estados da sessão.
Veja também
- Trabalhar com âncoras usando o ARCore para o Jetpack XR
- Trabalhar com planos usando o ARCore para o Jetpack XR
- Trabalhar com as mãos usando o ARCore para o Jetpack XR