ऑडियो ग्लास और डिसप्ले ग्लास के लिए, डिवाइस की क्षमताओं की जांच रनटाइम पर करना

इन XR डिवाइसों पर लागू होता है
इस गाइड की मदद से, इन तरह के एक्सआर डिवाइसों के लिए अनुभव बनाए जा सकते हैं.
ऑडियो और
डिसप्ले ग्लास

अलग-अलग तरह के ऑडियो और डिसप्ले ग्लास में अलग-अलग सुविधाएं होती हैं. अलग-अलग तरह के एआई डिवाइसों के लिए सहायता देने की योजना बनाने के बाद, रनटाइम के दौरान डिवाइस की क्षमताओं की जांच की जा सकती है. इससे उपयोगकर्ता के डिवाइस के लिए सबसे अच्छा अनुभव दिया जा सकता है.

यह देखना कि किसी डिवाइस में डिसप्ले है या नहीं

डिसप्ले वाले स्मार्ट ग्लास, Jetpack Compose Glimmer से बनाए गए यूज़र इंटरफ़ेस (यूआई) दिखा सकते हैं. यहां दिए गए उदाहरण में, यह देखने का तरीका बताया गया है कि चश्मे वाले डिवाइस में डिसप्ले है या नहीं:

// Check device capabilities
val projectedDeviceController = ProjectedDeviceController.create(this@GlassesMainActivity)
isVisualUiSupported = projectedDeviceController.capabilities.contains(CAPABILITY_VISUAL_UI)

डिस्प्ले की स्थिति में हुए बदलावों को दिखाने के लिए प्रतिक्रिया देना

डिस्प्ले वाले चश्मे में, डिस्प्ले बंद हो सकती है या उपयोगकर्ता डिस्प्ले को बंद कर सकता है. ऐसी गतिविधियां डिज़ाइन करने के लिए जो डिसप्ले चालू या बंद होने पर भी चलती रहें, addPresentationModeChangedListener का इस्तेमाल करें. इससे डिसप्ले की स्थिति बदलने पर आपको सूचना मिलेगी. डिसप्ले की स्थिति के आधार पर, ऑडियो की सही जानकारी के लिए अपनी गतिविधि को ट्यून किया जा सकता है.

ProjectedDisplayController.create(activity).addPresentationModeChangedListener {
    presentationModeFlags ->

    val areVisualsOff = !presentationModeFlags.hasPresentationMode(VISUALS_ON)
}

डिसप्ले चालू रखना

डिसप्ले ग्लास पर, सिस्टम से स्क्रीन को चालू रखने और addLayoutParamsFlags का इस्तेमाल करके स्क्रीन को बंद होने से रोकने का अनुरोध किया जा सकता है.

var projectedDisplayController = ProjectedDisplayController.create(activity)

projectedDisplayController.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)