Entorno de ejecución de XR
Actualización más reciente | Versión estable | Versión potencial | Versión beta | Versión alfa |
---|---|---|---|---|
7 de mayo de 2025 | - | - | - | 1.0.0-alpha04 |
Cómo declarar dependencias
Para agregar una dependencia en el entorno de ejecución de XR, debes agregar el repositorio de Maven de Google a tu proyecto. Lee el repositorio de Maven de Google para obtener más información.
Agrega las dependencias de los artefactos que necesites en el archivo build.gradle
de tu app o módulo:
Groovy
dependencies { implementation "androidx.xr.runtime:runtime:1.0.0-alpha04" // Use in environments that do not support OpenXR testImplementation "androidx.xr.runtime:runtime-testing:1.0.0-alpha04" }
Kotlin
dependencies { implementation("androidx.xr.runtime:runtime:1.0.0-alpha04") // Use in environments that do not support OpenXR testImplementation("androidx.xr.runtime:runtime-testing:1.0.0-alpha04") }
Para obtener más información sobre las dependencias, consulta Cómo agregar dependencias de compilación.
Comentarios
Tus comentarios ayudan a mejorar Jetpack. Avísanos si descubres nuevos errores o tienes ideas para mejorar esta biblioteca. Consulta los errores existentes de esta biblioteca antes de crear uno nuevo. Puedes agregar tu voto a un error existente haciendo clic en el botón de la estrella.
Consulta la documentación sobre la Herramienta de seguimiento de errores para obtener más información.
Versión 1.0
Versión 1.0.0-alpha04
7 de mayo de 2025
Lanzamiento de androidx.xr.runtime:runtime:1.0.0-alpha04
, androidx.xr.runtime:runtime-openxr:1.0.0-alpha04
y androidx.xr.runtime:runtime-testing:1.0.0-alpha04
. La versión 1.0.0-alpha04 contiene estas confirmaciones.
Nuevas funciones
- La sesión ahora implementa
androidx.lifecycle.LifecycleOwner
para lograr una mayor interoperabilidad con los paradigmas de ciclo de vida existentes de Android. - Las cadenas de manifiesto para Android XR se especifican y documentan aquí.
- Se agregaron métodos de extensión de devolución de llamada de visibilidad espacial para supervisar cuándo el contenido de la escena se mueve dentro o fuera del campo de visión del usuario.
- Se agregó una versión de stub de
JxrPlatformAdapter
(y todas sus clases relacionadas). - La sesión se usará en
SceneCore
y en el entorno de ejecución en lugar de la sesión enSceneCore
. - Se agregó
ActivityPose.hitTest
, lo que habilita unhitTest
contra el contenido virtual. - Ahora se admite especificar varias implementaciones del entorno de ejecución en el tiempo de compilación. Solo se cargará uno en el momento de la ejecución según el conjunto de funciones del dispositivo actual.
- Se agregó un nuevo tipo de componente
SpatialPointerComponent
, que permite a los clientes especificar el ícono renderizado para el puntero o inhabilitarlo. Actualmente, este componente solo se puede adjuntar a instancias dePanelEntity
.
Cambios en la API
- Haz pública la implementación de Config. (I95860).
- Se agregaron
HandJointType
yTrackingState
. (I55880). - Los proyectos lanzados con Kotlin 2.0 requieren KGP 2.0.0 o una versión posterior para su consumo (Idb6b5).
Hand.isActive (boolean)
cambió aHand.trackingState
. La implementación deOpenXR
se modificó según corresponda.- El requisito de permiso
android.permission.SCENE_UNDERSTANDING
enSession.configure
se cambió aandroid.permission.SCENE_UNDERSTANDING_COARSE
. - Se implementó
LifecycleManager.configure
y ahora pasa un objetoConfig
que contiene una propiedad para cada función del entorno de ejecución configurable. - Ahora se puede llamar a
Session.configure
con unConfig
para configurar las funciones del entorno de ejecución disponibles. Session.create
ahora admite pasar unCoroutineContext
en lugar de unCoroutineDispatcher
.Session.create
admite la carga deARCore
para Jetpack XR oSceneCore
. Se debe proporcionar al menos uno (hay versiones de prueba disponibles).FakePerceptionManager
arroja unAnchorInvalidUuidException
cuando se pasa un UUID no válido aAnchor.load
yAnchor.unpersist
.CoreState
ya no es una clase de datos.
Correcciones de errores
- Se corrigieron las configuraciones de Proguard del entorno de ejecución.
Versión 1.0.0-alpha03
26 de febrero de 2025
Lanzamiento de androidx.xr.runtime:runtime:1.0.0-alpha03
, androidx.xr.runtime:runtime-openxr:1.0.0-alpha03
y androidx.xr.runtime:runtime-testing:1.0.0-alpha03
sin cambios notables desde la última versión alfa. La versión 1.0.0-alpha03 contiene estas confirmaciones.
Versión 1.0.0-alpha02
12 de febrero de 2025
Lanzamiento de androidx.xr.runtime:runtime:1.0.0-alpha02
, androidx.xr.runtime:runtime-openxr:1.0.0-alpha02
y androidx.xr.runtime:runtime-testing:1.0.0-alpha02
. La versión 1.0.0-alpha02 contiene estas confirmaciones.
Cambios rotundos y de comportamiento
- Las funciones del entorno de ejecución de
OpenXR
que muestran un ancla ahora arrojanAnchorResourcesExhaustedException
si encuentran un código de error que notifica que se alcanzó el límite de recursos deOpenXR
. - Ahora se requiere el permiso
android.permission.HAND_TRACKING
paraSession.create
ySession.resume
.
Nuevas funciones
- Se agregó compatibilidad con el seguimiento de manos.
Correcciones de errores
- La creación de anclas es más estable cuando se ejecuta en un emulador.
Versión 1.0.0-alpha01
12 de diciembre de 2024
Lanzamiento de androidx.xr.runtime:runtime-* 1.0.0-alpha01
.
Funciones de la versión inicial
Lanzamiento inicial de Jetpack XR Runtime. Esta biblioteca contiene funciones fundamentales para el paquete de bibliotecas de Jetpack XR. Esto incluye el descubrimiento de capacidades, la administración del ciclo de vida, la configuración y mucho más. La biblioteca de Runtime proporciona diferentes variaciones (p.ej., runtime-openxr
o runtime-testing
) según la plataforma de ejecución. Además, esta biblioteca ofrece abstracciones matemáticas fundamentales, como Vector3
y Matrix4
, que se usan en toda la superficie de la API de Jetpack XR.
Session
: Te proporciona controles detallados sobre el sistema de XR, lo que incluye decidir cuándo se ejecuta y no se ejecuta el procesamiento, y la configuración general. También es el identificador que usarás en todas las demás APIs para desbloquear las funciones subyacentes del sistema.Pose
: Es una ubicación en un sistema de coordenadas arbitrario que tiene una posición y una orientación asociadas. Usarás esta clase para comunicar la ubicación de los objetos con ARCore para Jetpack XR y Jetpack SceneCore.
Errores conocidos
- Actualmente,
configure
no realiza ninguna acción. En versiones futuras, se agregarán parámetros de configuración nuevos que puedes usar para controlar el comportamiento deSession
.