تتوفّر أنواع مختلفة من نظارات الذكاء الاصطناعي بقدرات مختلفة. بعد التخطيط لكيفية توفير الدعم لأنواع مختلفة من أجهزة الذكاء الاصطناعي، يمكنك التحقّق من إمكانات الجهاز في وقت التشغيل لتقديم أفضل تجربة للمستخدم على جهازه.
التحقّق مما إذا كان الجهاز مزوّدًا بشاشة عرض
تتضمّن بعض نظارات الذكاء الاصطناعي شاشة يمكن أن يعرض عليها تطبيقك واجهات مستخدم تم إنشاؤها باستخدام Jetpack Compose Glimmer. يوضّح المثال التالي كيفية التحقّق مما إذا كان جهاز النظارات يتضمّن شاشة عرض:
val projectedDeviceController = ProjectedDeviceController.create(activity)
if (projectedDeviceController.capabilities.contains(CAPABILITY_VISUAL_UI)) {
// Set up UX state machine for AI glasses that have a display.
} else {
// Set up UX state machine for AI glasses that don't have a display.
}
الاستجابة لتغييرات حالة العرض
في نظارات الذكاء الاصطناعي المزودة بشاشة، يمكن أن تنتهي مهلة الشاشة أو يمكن للمستخدم إيقافها. لتصميم أنشطة يتم تنفيذها سواء كانت الشاشة قيد التشغيل أو الإيقاف،
استخدِم 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)