Diferentes tipos de óculos de áudio e de exibição têm recursos diferentes. Depois de planejar como você vai oferecer suporte a diferentes tipos de dispositivos de IA, verifique os recursos do dispositivo durante a execução para oferecer a melhor experiência para o dispositivo de um usuário.
Verificar se um dispositivo tem uma tela
Os óculos de exibição podem mostrar interfaces criadas com o Glimmer do Jetpack Compose. O exemplo a seguir mostra como verificar se um dispositivo de óculos tem uma tela:
// Check device capabilities val projectedDeviceController = ProjectedDeviceController.create(this@GlassesMainActivity) isVisualUiSupported = projectedDeviceController.capabilities.contains(CAPABILITY_VISUAL_UI)
Reagir a mudanças de estado de exibição
Nos óculos de exibição, o display pode expirar ou o usuário pode desativá-lo. Para criar atividades que sejam executadas com a tela ligada ou desligada, use
addPresentationModeChangedListener para receber uma notificação quando o estado da tela
mudar. Você pode ajustar sua atividade para a quantidade adequada de informações de áudio, dependendo do estado da tela.
ProjectedDisplayController.create(activity).addPresentationModeChangedListener {
presentationModeFlags ->
val areVisualsOff = !presentationModeFlags.hasPresentationMode(VISUALS_ON)
}
Manter a tela ligada
Em óculos de exibição, você pode pedir que o sistema mantenha a tela ligada e evite que ela atinja o tempo limite usando addLayoutParamsFlags.
var projectedDisplayController = ProjectedDisplayController.create(activity)
projectedDisplayController.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)