Sessione

Session fornisce l'interfaccia principale per la funzionalità spazializzata dell'applicazione. Ogni attività spazializzata deve creare e contenere un'istanza di Session. Una volta creata, l'applicazione può utilizzare le interfacce Session per creare entità di contenuti spazializzati, come pannelli o modelli 3D, nonché impostare un ambiente spaziale, identificare la posizione dell'utente e ancorare i contenuti al mondo reale.

Accedere alla sessione da Jetpack Compose per XR

Quando utilizzi Jetpack Compose per XR, la sessione viene creata per te e puoi accedervi utilizzando LocalSession.current. Vedi l'esempio di seguito:

@Composable
fun ComposableUsingSession() {
    val session = LocalSession.current
}

Accedere alla sessione da Jetpack SceneCore

Se crei entità spazializzate dalla libreria SceneCore, devi creare la sessione.

La creazione di una sessione è supportata solo su un dispositivo Android XR. Il tentativo di creare una sessione su un dispositivo incompatibile non andrà a buon fine. Per creare una sessione, passa un'attività al metodo create, come mostrato nell'esempio seguente.

when (val result = Session.create(this)) {
    is SessionCreateSuccess -> {
        val xrSession = result.session
        // ...
    }
    is SessionCreatePermissionsNotGranted ->
        TODO(/* The required permissions in result.permissions have not been granted. */)
}

Quando l'attività di una sessione viene distrutta, tutti gli elementi dell'interfaccia utente spaziale e i contenuti 3D associati alla sessione vengono distrutti e la sessione non è più valida.

Vedi anche