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

Для устройств под управлением 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 .

Клавиши CameraCharacteristics

Выполнение

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

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

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

Справочную реализацию Camera HAL, поддерживающую управление мощностью резака, см. в EmulatedCameraDeviceHWLImpl.cpp .

Проверка

Чтобы проверить реализацию функции контроля мощности резака, выполните следующие тесты VTS и CTS: