ARCore para Jetpack XR
Actualización más reciente | Versión estable | Versión potencial | Versión beta | Versión alfa |
---|---|---|---|---|
12 de diciembre de 2024 | - | - | - | 1.0.0-alpha01 |
Cómo declarar dependencias
Para agregar una dependencia en ARCore para Jetpack 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.arcore:arcore:1.0.0-alpha01" }
Kotlin
dependencies { implementation("androidx.xr.arcore:arcore:1.0.0-alpha01") }
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-alpha01
12 de diciembre de 2024
Lanzamiento de androidx.xr.arcore:arcore-* 1.0.0-alpha01
.
Funciones de la versión inicial
Inspirada en la biblioteca existente de ARCore, la biblioteca de ARCore para Jetpack XR proporciona capacidades para combinar contenido digital con el mundo real. Esta biblioteca incluye el seguimiento de movimiento, las anclas persistentes, las pruebas de hit y la identificación de planos con etiquetado semántico (por ejemplo, piso, paredes y mesas). Consulta la guía para desarrolladores para obtener más información sobre cómo trabajar con ARCore para Jetpack XR.
Session
: ARCore para Jetpack XR usa el entorno de ejecución de Jetpack XR para potenciar su funcionalidad. Usarás una sesión para interactuar con la mayoría de las APIs de ARCore para Jetpack XR, así que consulta su documentación.Plane
: Usa planos para comprender el mundo que te rodea. Cada plano tiene unLabel
que lo describe semánticamente. Puedes usarsubscribe
para recibir notificaciones sobre los aviones detectados más recientes ostate
para recibir notificaciones sobre los cambios en un avión específico.Anchor
: Es un vínculo entre un objeto virtual y una ubicación del mundo real. Los anclajes se pueden conectar a una ubicación específica en el espacio (concreate
) o a unTrackable
(concreateAnchor
).Los anclajes se pueden volver a usar en todas las sesiones. Puedes usar
persist
para almacenarlos,getPersistedAnchorUuids
para enumerarlos yload
para recuperarlos. Asegúrate deunpersist
cuando ya no estén en uso.Las anclas son interoperables entre ARCore para Jetpack XR y Jetpack SceneCore. Puedes crear un
AnchorEntity
con un ancla o, si tienes un AnchorEntity existente, puedes usargetAnchor
para recuperar su ancla de respaldo.Ofrece interacciones naturales del usuario con
hitTest
. Un hitTest usa unRay
para determinar qué contenido interseca y crear unAnchor
desde esa ubicación. Considera realizar un hitTest desde unInputEvent
.
Errores conocidos
Puede haber una demora entre la llamada a
unpersist
y la eliminación de su UUID de los resultados que muestragetPersistedAnchorUuids
.create
no validará que el sistema tenga suficientes recursos para mostrar nuevos anclajes. Crear una cantidad excesiva de anclas puede provocar una falla.Por el momento, no se admite la persistencia de un ancla que se haya mantenido y quitado anteriormente.
Se admite el uso en el emulador, pero es posible que el comportamiento no sea tan estable como cuando se ejecuta en un dispositivo real. En particular, las llamadas a
create
pueden fallar con un error de código nativo y finalizar la actividad de inmediato.En ciertas circunstancias, es posible que se genere un
RuntimeException
por error cuando se llame apersist
con el mensaje "No se persistió el ancla". En esas circunstancias, la función seguirá teniendo éxito y se conservará el ancla. Como solución alternativa, te recomendamos que unas la llamada apersist
con un bloquetry
.