Verificar os recursos do dispositivo durante a execução para óculos de IA

Cada tipo de óculos de IA tem 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

Alguns óculos de IA têm uma tela em que o app pode 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

Em óculos de IA com tela, ela pode expirar ou o usuário pode desativá-la. 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 de exibição.

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

    val areVisualsOff = !presentationModeFlags.hasPresentationMode(VISUALS_ON)
}

Manter a tela ligada

Em óculos de IA com tela, é possível pedir que o sistema mantenha a tela ligada e evite que ela expire usando addLayoutParamsFlags.

var projectedDisplayController = ProjectedDisplayController.create(activity)

projectedDisplayController.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)