Controle da intensidade da luz da lanterna

Para dispositivos com o Android 13 ou versões mais recentes, o framework do Android oferece um controle de vários níveis da intensidade da lanterna. No Android 12 e versões anteriores, o framework permite apenas ativar ou desativar o modo de lanterna. Com suporte ao controle de intensidade de 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ópio, enviando pulsos rápidos de luz em uma linha. Outro benefício desse recurso é que ele pode melhorar a duração da bateria e o desempenho, já que o modo lanterna nem sempre precisa ser ativado com a 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 de intensidade da lanterna usando as seguintes chaves de características de câmera e APIs públicas. Nenhuma permissão de câmera é necessária para essas APIs porque a câmera não é acessada.

APIs CameraManager

Chaves de CameraCharacteristics

Implementação

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

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 conferir uma implementação de HAL da câmera de referência com suporte ao controle de intensidade da lanterna, consulte EmulatedCameraDeviceHWLImpl.cpp.

Validação

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