मोबाइल डिवाइसों पर, Jetpack XR ऐप्लिकेशन के लिए ARCore चलाना

Jetpack XR के लिए ARCore, ARCore के साथ काम करने वाले मोबाइल डिवाइसों के साथ-साथ Android XR डिवाइसों पर भी काम करता है. ARCore for Jetpack XR library, उन डिवाइसों पर Google Play Services for AR रनटाइम का इस्तेमाल कर सकती है. इससे आपको एआर के ऐसे ऐप्लिकेशन लिखने में मदद मिलती है जो Jetpack XR perception API के लिए ARCore के साथ इंटरैक्ट करने के लिए, शेयर किए गए कोडबेस का इस्तेमाल करते हैं.

सुविधा के साथ काम करने की क्षमता

ARCore for Jetpack XR की ये सुविधाएं, मोबाइल रनटाइम पर काम नहीं करती हैं:

  • स्थानीय तौर पर सेव किए गए ऐंकर
  • चेहरा ट्रैक करने की सुविधा
  • आई ट्रैकिंग की सुविधा

अंतर्निहित मोबाइल रनटाइम को ऐक्सेस करना

आपके ऐप्लिकेशन को मोबाइल रनटाइम की उन सुविधाओं को ऐक्सेस करने की ज़रूरत पड़ सकती है जो Jetpack XR के लिए ARCore में उपलब्ध नहीं हैं. उदाहरण के लिए, लाइटिंग का अनुमान लगाने की वैल्यू ऐक्सेस करने या रिकॉर्डिंग और प्लेबैक की सुविधा का इस्तेमाल करने के लिए.

डिपेंडेंसी जोड़ें

इन क्लास को सीधे तौर पर ऐक्सेस करने के लिए, आपके ऐप्लिकेशन को implementation डिपेंडेंसी के तौर पर इन लाइब्रेरी पर साफ़ तौर पर निर्भर रहना होगा.

अपनी build.gradle फ़ाइल में, डिपेंडेंसी के इस स्पेसिफ़िकेशन का इस्तेमाल करें:

शानदार

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")
}

ArCoreRuntime को ऐक्सेस करना

आपका ऐप्लिकेशन, रनटाइम से Session और Frame ऑब्जेक्ट हासिल कर सकता है. साथ ही, इन ऑब्जेक्ट का सीधे तौर पर इस्तेमाल कर सकता है:

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