Uruchamianie ARCore w aplikacjach Jetpack XR na urządzeniach mobilnych

ARCore w Jetpacku XR może działać na obsługiwanych urządzeniach mobilnych, a także na urządzeniach z Androidem XR. Biblioteka ARCore dla Jetpack XR może używać na tych urządzeniach środowiska wykonawczego Usług Google Play dla AR. Dzięki temu możesz pisać aplikacje do obsługi projektów AR, które korzystają ze wspólnej bazy kodu do interakcji z interfejsami ARCore for Jetpack XR Perception API.

Zgodność funkcji

Następujące funkcje udostępniane przez ARCore dla Jetpack XR nie są obsługiwane w środowisku wykonawczym na urządzeniach mobilnych:

  • Lokalnie trwałe kotwice
  • Śledzenie twarzy
  • Śledzenie wzroku

Dostęp do podstawowego środowiska wykonawczego na urządzeniu mobilnym

Aplikacja może potrzebować dostępu do funkcji podstawowego środowiska wykonawczego na urządzeniu mobilnym, które nie są udostępniane w ARCore dla Jetpack XR, np. do wartości szacowania oświetlenia lub do nagrywania i odtwarzania.

Dodawanie zależności

Aby uzyskać bezpośredni dostęp do tych klas, aplikacja musi wyraźnie zależeć od tych bibliotek jako implementationzależność.

W pliku build.gradle użyj tej specyfikacji zależności:

Dynamiczny

dependencies {
    implementation "androidx.xr.arcore:arcore-play-services:1.0.0-alpha13"
    implementation "com.google.ar:core:1.51.0"
}

Kotlin

dependencies {
    implementation("androidx.xr.arcore:arcore-play-services:1.0.0-alpha13")
    implementation("com.google.ar:core:1.51.0")
}

Otwórz ArCoreRuntime

Aplikacja może uzyskać obiekty SessionFrame ze środowiska wykonawczego i używać ich bezpośrednio:

val arCoreRuntime = session.runtimes.firstNotNullOfOrNull { it as? ArCoreRuntime } ?: return
val originalSession = arCoreRuntime.lifecycleManager.session()
val originalFrame = arCoreRuntime.perceptionManager.lastFrame()