在运行时检查 AI 眼镜的设备功能

不同类型的 AI 眼镜具有不同的功能。在 规划如何 支持不同类型的 AI 设备后,您可以在运行时检查设备 功能,以便为用户的设备提供最佳体验。

检查设备是否有显示屏

某些 AI 眼镜具有显示屏,您的应用可以在其中显示使用 Jetpack Compose Glimmer 构建的 界面。以下示例展示了如何检查眼镜设备是否有显示屏:

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

响应显示屏状态变化

在带有显示屏的 AI 眼镜上,显示屏可能会超时,或者用户可以关闭显示屏。如需设计在显示屏开启或关闭时运行的 activity, 请使用 addPresentationModeChangedListener 在显示屏 状态发生变化时收到通知。您可以根据显示屏状态调整 activity,以提供适当的音频信息量。

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

    val areVisualsOff = !presentationModeFlags.hasPresentationMode(VISUALS_ON)
}

保持显示屏开启状态

在带有显示屏的 AI 眼镜上,您可以请求系统保持屏幕开启状态 并防止屏幕超时,方法是使用 addLayoutParamsFlags

var projectedDisplayController = ProjectedDisplayController.create(activity)

projectedDisplayController.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)