Android 13 veya sonraki sürümleri çalıştıran cihazlarda Android çerçevesi, el feneri gücü için çok düzeyli kontrol sağlar. Android 12 ve önceki sürümlerde çerçeve yalnızca el feneri modunu açma veya kapatma olanağı sunar. Cihazlar, çok seviyeli el feneri gücü kontrolünü destekleyerek ışık koşullarına göre el feneri parlaklığını kontrol etme ve art arda hızlı ışık darbeleri göndererek yardım sinyali gönderme gibi kullanım alanlarına olanak tanıyabilir. Bu özelliğin bir diğer avantajı da, el feneri modunun her zaman maksimum güçte açılmasına gerek olmadığı için pil ömrünü ve performansını iyileştirebilmesidir. Bu da termal güç kısıtlamasına yol açabilir.
Herkese açık API'ler
Uygulamalar, aşağıdaki herkese açık API'ler ve kamera özellikleri anahtarları aracılığıyla el feneri gücü kontrol özelliğini kullanabilir. Kameraya erişilmediği için bu API'ler için kamera izni gerekmez.
CameraManager API'leri
public void turnOnTorchWithStrengthLevel (String cameraId, int torchStrength)
:cameraId
değeriyle ilişkili el feneri modundaki el fenerinin parlaklık düzeyini ayarlar. El feneri modu kapalıysa vetorchStrength
,1
değerinden büyük veya eşitse el feneri,torchStrength
değerinde belirtilen güç seviyesinde açılır.public int getTorchStrengthLevel (String cameraId)
:cameraId
ile ilişkili flaş biriminin parlaklık düzeyini döndürür.
CameraCharacteristics anahtarları
FLASH_INFO_STRENGTH_MAXIMUM_LEVEL
: Maksimum parlaklık seviyesi. Kamera HAL'i,1
değerinden büyük bir değer ayarlayarak bu özelliğin reklamını yapar.FLASH_INFO_STRENGTH_DEFAULT_LEVEL
: Varsayılan el feneri parlaklık düzeyi.
Uygulama
Cihazınızda el feneri gücü kontrol özelliğini desteklemek için aşağıdaki kamera AIDL HAL arayüzlerini kullanın:
Konum: /camera/device/aidl/android/hardware/camera/device/ICameraDevice.aidl
HAL uygulamanızın, el feneri parlaklık kontrolü özelliğini desteklemek için aşağıdaki kamera özellikleri anahtarlarının reklamını yaptığından emin olun:
El feneri gücünü kontrol eden referans bir kamera donanım soyutlama katmanı uygulaması için EmulatedCameraDeviceHWLImpl.cpp
bölümüne bakın.
Doğrulama
El feneri gücü kontrol özelliğini uygulamanızı doğrulamak için aşağıdaki VTS ve CTS testlerini çalıştırın: