Контроль мощности факела

Для устройств под управлением Android 13 и более поздних версий фреймворк Android обеспечивает многоуровневое управление яркостью фонарика. В Android 12 и более ранних версиях фреймворк позволяет только включать и выключать режим фонарика. Благодаря поддержке многоуровневого управления яркостью фонарика устройства могут использовать такие функции, как управление яркостью фонарика в зависимости от условий освещения и отправка сигналов о помощи с помощью стробоскопического эффекта, посылая быстрые импульсы света подряд. Ещё одно преимущество этой функции заключается в увеличении срока службы аккумулятора и производительности, поскольку режим фонарика не всегда требуется включать на максимальную мощность, что может привести к перегреву.

Публичные API

Приложения могут использовать функцию управления мощностью фонарика через следующие общедоступные API и ключи характеристик камеры. Для этих API не требуются разрешения на доступ к камере, поскольку доступ к ней не осуществляется.

API CameraManager

  • public void turnOnTorchWithStrengthLevel (String cameraId, int torchStrength) : устанавливает уровень яркости фонарика, связанного с заданным значением cameraId , в режиме фонарика. Если режим фонарика выключен и значение torchStrength больше или равно 1 , фонарик включается с уровнем яркости, указанным в torchStrength .
  • public int getTorchStrengthLevel (String cameraId) : возвращает уровень яркости вспышки, связанной с cameraId .

Клавиши характеристик камеры

Выполнение

Для поддержки функции управления мощностью фонарика на вашем устройстве используйте следующие интерфейсы камеры AIDL HAL:

Расположение: /camera/device/aidl/android/hardware/camera/device/ICameraDevice.aidl

Убедитесь, что ваша реализация HAL объявляет следующие ключи характеристик камеры для поддержки функции управления яркостью фонарика:

Для справочной реализации камеры HAL, поддерживающей управление силой горелки, см. EmulatedCameraDeviceHWLImpl.cpp .

Проверка

Для проверки реализации функции управления силой пламени горелки выполните следующие тесты VTS и CTS: