Controle da intensidade da luz da lanterna

Para dispositivos com Android 13 ou mais recente, o framework do Android oferece um controle multinível para a intensidade da luz da lanterna. No Android 12 e em versões anteriores, a estrutura permite apenas ativar ou desativar o modo de lanterna. Ao oferecer suporte ao controle de intensidade da lanterna em vários níveis, os dispositivos podem ativar casos de uso como controlar o brilho da lanterna com base nas condições de iluminação e enviar sinais de assistência usando um efeito estroboscópico com o envio de pulsos rápidos de luz em sequência. Outro benefício desse recurso é que ele pode melhorar a duração da bateria e o desempenho, já que o modo de lanterna não precisa estar sempre ligado na intensidade máxima, o que pode levar a condições de limitação térmica.

APIs públicas

Os apps podem usar o recurso de controle da intensidade da lanterna com as seguintes APIs públicas e chaves de características da câmera. Nenhuma permissão de câmera é necessária para essas APIs porque a câmera não é acessada.

APIs CameraManager

Chaves CameraCharacteristics

Implementação

Para oferecer suporte ao recurso de controle da intensidade da lanterna no seu dispositivo, use as seguintes interfaces AIDL HAL da câmera:

Local: /camera/device/aidl/android/hardware/camera/device/ICameraDevice.aidl

Verifique se a implementação da HAL anuncia as seguintes chaves de características da câmera para oferecer suporte ao recurso de controle de brilho da lanterna:

Para uma implementação de HAL da câmera de referência que oferece suporte ao controle da intensidade da luz da lanterna, consulte EmulatedCameraDeviceHWLImpl.cpp.

Validação

Para validar a implementação do recurso de controle da intensidade da lanterna, execute os seguintes testes do VTS e do CTS: