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 funkcji AR, które korzystają ze wspólnej bazy kodu do interakcji z interfejsami API ARCore for Jetpack XR perception.

Zgodność funkcji

Te funkcje 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 mieć 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:

Groovy

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

Kotlin

dependencies {
    implementation("androidx.xr.arcore:arcore-play-services:1.0.0-alpha09")
    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()