Runtime XR
| Ultimo aggiornamento | Release stabile | Candidato per la release | Release beta | Release alpha | 
|---|---|---|---|---|
| 22 ottobre 2025 | - | - | - | 1.0.0-alpha07 | 
Dichiara le dipendenze
Per aggiungere una dipendenza da XR runtime, devi aggiungere il repository Maven di Google al tuo progetto. Per saperne di più, consulta il repository Maven di Google.
Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle per
la tua app o il tuo modulo:
Alla moda
dependencies { implementation "androidx.xr.runtime:runtime:1.0.0-alpha07" // Optional dependencies for asynchronous conversions implementation "androidx.xr.runtime:runtime-guava:1.0.0-alpha07" implementation "androidx.xr.runtime:runtime-rxjava3:1.0.0-alpha07" // Use in environments that do not support OpenXR testImplementation "androidx.xr.runtime:runtime-testing:1.0.0-alpha07" }
Kotlin
dependencies { implementation("androidx.xr.runtime:runtime:1.0.0-alpha07") // Optional dependencies for asynchronous conversions implementation("androidx.xr.runtime:runtime-guava:1.0.0-alpha07") implementation("androidx.xr.runtime:runtime-rxjava3:1.0.0-alpha07") // Use in environments that do not support OpenXR testImplementation("androidx.xr.runtime:runtime-testing:1.0.0-alpha07") }
Per saperne di più sulle dipendenze, consulta Aggiungi dipendenze di build.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se riscontri nuovi problemi o hai idee per migliorare questa libreria. Prima di segnalare un nuovo problema, dai un'occhiata ai problemi esistenti in questa raccolta. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.
Per ulteriori informazioni, consulta la documentazione di Issue Tracker.
Versione 1.0
Versione 1.0.0-alpha07
22 ottobre 2025
androidx.xr.runtime:runtime-*:1.0.0-alpha07 è stato rilasciato. La versione 1.0.0-alpha07 contiene questi commit.
Modifiche alle API
- Rimuovi SessionConfigureConfigureNotSupportede sostituiscilo conUnsupportedOperationException. (I7680f)
Versione 1.0.0-alpha06
24 settembre 2025
androidx.xr.runtime:runtime-*:1.0.0-alpha06 è stato rilasciato. La versione 1.0.0-alpha06 contiene questi commit.
Modifiche alle API
- HandJointTypeè stato spostato da- xr:runtime:runtimea- xr:arcore:arcore. (Iadb9c, b/409058039)
- Modifica dell'operatore di moltiplicazione per componentWiseMultiplicationperVector2,Vector3,Vector4per la scalabilità e rimozione del simbolo dell'operatore per coerenza con altre librerie matematiche. Inoltre, rimuoviamocomponentWiseDivisiondalle classi Vector al posto diVector.scale(otherVector.inverse()). (I8e1f6, b/399146447)
- Aggiungendo [unscaled] per restituire una matrice con una scala di 1. (I6381d, b/434928658)
- :xr:runtime:runtime-guavaverrà rimosso perché- Coroutines.ktè stato sostituito da- SuspendtoFutureAdapter. (I0cd3c, b/406597902)
Versione 1.0.0-alpha05
30 luglio 2025
androidx.xr.runtime:runtime-*:1.0.0-alpha05 è stato rilasciato. La versione 1.0.0-alpha05 contiene questi commit.
Nuove funzionalità
- Aggiungi HandJointTypeeTrackingState. (I55880, b/334645808)
- Rendi pubblica l'implementazione di Config. (I95860, b/334645808)
- Sono stati introdotti nuovi tipi di SessionCreateResulteSessionConfigureResult. (Icb8cb, b/334645808)
- Aggiungi una nuova classe BoundingBoxche rappresenta un riquadro di selezione allineato all'asse nello spazio 3D, definito dai punti d'angolo minimo e massimo. (Ic68c5, b/423073468)
Modifiche alle API
- androidx.xr.scenecore.PixelDimensionsè stato rinominato e spostato in- androidx.xr.runtime.math.IntSize2d.- androidx.xr.scenecore.Dimensionsè stato rinominato e spostato in- androidx.xr.runtime.math.FloatSize3d.- androidx.xr.scenecore.PlaneTyperinominato in- androidx.xr.scenecore.PlaneOrientation.- androidx.xr.scenecore.PlaneSemanticrinominato in- androidx.xr.scenecore.PlaneSemanticType. (Ifd405, b/416456228)
- Corso androidx.xr.runtime.FoVrimosso. Utilizza inveceandroidx.xr.runtime.FieldOfView. (I9ae27)
- È stato aggiunto un overload aggiuntivo per Session.create, che può fornire unLifecycleOwnera cui collegare la sessione. Tieni presente che un'attività dovrà comunque essere fornita per la proprietà della risorsa e cheLifecycleOwnerdeve essere incluso nell'ambito dell'attività. (I1690b)
- FakeRuntimeAnchor.anchorsCreatedrinominato in- anchorsCreatedCount(I96df9, b/424441218)
- I valori di configurazione *Modesono stati rinominati per riflettere il loro comportamento. (I6d247, b/414648065)
- I progetti rilasciati con Kotlin 2.0 richiedono l'utilizzo di KGP 2.0.0 o versioni successive (Idb6b5, b/344563182)
- Le API relative alle stringhe del manifest sono state spostate da :xr:runtime:runtimea:xr:runtime:runtime-manifest. Il nome del pacchetto è cambiato daandroidx.xr.runtimeaandroidx.xr.runtime.manifest. (I610ad, b/418800249)
- Session.resume(),- Session.pause()e- Session.destroy()sono stati rimossi dalla superficie API. La sessione non è più un- LifecycleOwner. Il ciclo di vita della sessione verrà ora collegato al ciclo di vita dell'attività passata in- Session.create(). (I28a03)
- Questa libreria ora utilizza le annotazioni di nullabilità JSpecify, che sono di tipo use. Gli sviluppatori Kotlin devono utilizzare il seguente argomento del compilatore per imporre l'utilizzo corretto: -Xjspecify-annotations=strict(questo è il valore predefinito a partire dalla versione 2.1.0 del compilatore Kotlin) (Ia8420, b/326456246)
- L'artefatto di runtime principale (:xr:runtime:runtime) conterrà solo API asincrone in stile Kotlin. Gli sviluppatori Java possono fare affidamento su:xr:runtime:runtime-guavaper accedere alle API compatibili. (I05d4a, b/426639315)
- L'artefatto principale di Runtime (:xr:runtime:runtime) conterrà solo API asincrone in stile Kotlin. Gli sviluppatori Java possono fare affidamento sulla libreriaxr:runtime:runtime-rxjava3per accedere alle API compatibili. (I64122, b/426639775)
- Sposta le coroutine in :xr:runtime:runtime-guavae i flussi in:xr:runtime:runtime-rxjava3. (I60ae9)
- Session.createe- Session.configureora generano- SecurityExceptionquando non sono state concesse autorizzazioni sufficienti anziché restituire- SessionCreatePermissionsNotGrantedo- SessionConfigurePermissionsNotGranted. (I7c488, b/430651879)
Versione 1.0.0-alpha04
7 maggio 2025
androidx.xr.runtime:runtime:1.0.0-alpha04, androidx.xr.runtime:runtime-openxr:1.0.0-alpha04 e androidx.xr.runtime:runtime-testing:1.0.0-alpha04 sono stati rilasciati. La versione 1.0.0-alpha04 contiene questi commit.
Nuove funzionalità
- Session ora implementa androidx.lifecycle.LifecycleOwnerper una maggiore interoperabilità con i paradigmi del ciclo di vita di Android esistenti.
- Le stringhe manifest per Android XR sono specificate e documentate qui.
- Sono stati aggiunti metodi di estensione del callback di visibilità spaziale per monitorare quando i contenuti della scena si spostano all'interno o all'esterno del campo visivo dell'utente.
- È stata aggiunta una versione stub di JxrPlatformAdapter(e di tutte le classi correlate).
- La sessione verrà utilizzata sia in SceneCoreche in Runtime anziché nella sessione inSceneCore.
- È stato aggiunto ActivityPose.hitTest, che consente dihitTestcontro i contenuti virtuali.
- Ora è supportata la specifica di più implementazioni di Runtime in fase di compilazione. Solo uno verrà caricato in fase di esecuzione in base al set di funzionalità del dispositivo corrente.
- È stato aggiunto il nuovo tipo di componente SpatialPointerComponent, che consente ai clienti di specificare l'icona visualizzata per il puntatore o di disattivarla. Questo componente può essere collegato attualmente solo aPanelEntityistanze.
Modifiche alle API
- Rendi pubblica l'implementazione di Config. (I95860)
- Aggiungi HandJointTypeeTrackingState. (I55880)
- I progetti rilasciati con Kotlin 2.0 richiedono l'utilizzo di KGP 2.0.0 o versioni successive (Idb6b5)
- Hand.isActive (boolean)è stato modificato in- Hand.trackingState. L'implementazione di- OpenXRè stata modificata di conseguenza.
- Il requisito di autorizzazione android.permission.SCENE_UNDERSTANDINGinSession.configureè stato modificato inandroid.permission.SCENE_UNDERSTANDING_COARSE.
- LifecycleManager.configureè implementato e ora passa un oggetto- Configche contiene una proprietà per ogni funzionalità di runtime configurabile.
- Session.configureora può essere chiamato con un- Configper configurare le funzionalità di runtime disponibili.
- Session.createora supporta il passaggio di un- CoroutineContextanziché di un- CoroutineDispatcher.
- Session.createsupporta il caricamento di- ARCoreper Jetpack XR e/o- SceneCore. Deve essere fornito almeno un valore (sono disponibili versioni di test).
- FakePerceptionManagergenera un- AnchorInvalidUuidExceptionquando viene passato un UUID non valido a- Anchor.loade- Anchor.unpersist.
- CoreStatenon è più una classificazione dei dati.
Correzioni di bug
- Configurazioni Proguard di runtime fisse.
Versione 1.0.0-alpha03
26 febbraio 2025
androidx.xr.runtime:runtime:1.0.0-alpha03, androidx.xr.runtime:runtime-openxr:1.0.0-alpha03 e androidx.xr.runtime:runtime-testing:1.0.0-alpha03 sono stati rilasciati senza modifiche significative rispetto all'ultima versione alpha. La versione 1.0.0-alpha03 contiene questi commit.
Versione 1.0.0-alpha02
12 febbraio 2025
androidx.xr.runtime:runtime:1.0.0-alpha02, androidx.xr.runtime:runtime-openxr:1.0.0-alpha02 e androidx.xr.runtime:runtime-testing:1.0.0-alpha02 sono stati rilasciati. La versione 1.0.0-alpha02 contiene questi commit.
Modifiche che provocano errori e comportamentali
- Le funzioni di runtime OpenXRche restituiscono un ancoraggio ora generanoAnchorResourcesExhaustedExceptionse rilevano un codice di errore che notifica che è stato raggiunto il limite di risorseOpenXR.
- L'autorizzazione android.permission.HAND_TRACKINGè ora obbligatoria perSession.createeSession.resume.
Nuove funzionalità
- Aggiunto il supporto del tracciamento delle mani.
Correzioni di bug
- La creazione di ancore è più stabile quando viene eseguita su un emulatore
Versione 1.0.0-alpha01
12 dicembre 2024
androidx.xr.runtime:runtime-* 1.0.0-alpha01 è stato rilasciato.
Funzionalità della versione iniziale
Versione iniziale di Jetpack XR Runtime. Questa libreria contiene funzionalità fondamentali per la suite di librerie Jetpack XR. Sono inclusi il rilevamento delle funzionalità, la gestione del ciclo di vita, la configurazione e altro ancora. La libreria Runtime fornisce diverse varianti (ad es. runtime-openxr o runtime-testing) a seconda della piattaforma di esecuzione. Inoltre, questa libreria offre astrazioni matematiche fondamentali come Vector3 e Matrix4, che vengono utilizzate in tutta la superficie dell'API Jetpack XR.
- Session: ti offre controlli granulari sul sistema XR, inclusa la decisione di quando l'elaborazione viene eseguita e la configurazione generale. È anche l'handle che utilizzerai in tutte le altre API per sbloccare le funzionalità di sistema sottostanti.
- Pose: una posizione in un sistema di coordinate arbitrario a cui sono associati una posizione e un orientamento. Utilizzerai questa classe per comunicare la posizione degli oggetti con ARCore per Jetpack XR e Jetpack SceneCore.
Problemi noti
- configureè attualmente un'operazione nulla. Le release future aggiungeranno nuove impostazioni che potrai utilizzare per controllare il comportamento di- Session.
