تختلف إمكانات الأنواع المختلفة من نظارات الصوت ونظارات العرض. بعد التخطيط لكيفية توفير الدعم لأنواع مختلفة من أجهزة الذكاء الاصطناعي ، يمكنك التحقّق من إمكانات الجهاز في وقت التشغيل لتقديم الـ أفضل تجربة لجهاز المستخدم.
التحقّق مما إذا كان الجهاز يتضمّن شاشة عرض
يمكن لنظارات العرض عرض واجهات المستخدم التي تم إنشاؤها باستخدام 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)