Auf Geräten mit Android 13 oder höher wird die bietet eine mehrstufige Steuerung der Fackelstärke. In Android 12 und niedriger ermöglicht das Framework nur um den Taschenlampenmodus zu aktivieren oder zu deaktivieren. Durch die Unterstützung von Taschenlampen mit mehreren Stufen können Geräte Anwendungsfälle wie die Steuerung der Helligkeit des Taschenlampe abhängig von den Lichtverhältnissen und sendet Signale zur Unterstützung mit einem Stroboskop-Effekt, bei dem hintereinander schnelle Lichtimpulse gesendet werden. Anderes Der Vorteil dieser Funktion besteht darin, dass sie die Akkulaufzeit und die Leistung verbessern kann, Der Taschenlampenmodus muss nicht immer mit der höchsten Stärke aktiviert werden. was zu einer thermischen Drosselung führen kann.
Öffentliche APIs
Apps können die Funktion zur Steuerung der Taschenlampenstärke über folgende öffentliche Geräte nutzen APIs und Schlüssel für Kameraeigenschaften Für APIs nicht auf die Kamera zugreifen.
CameraManager
APIs
public void turnOnTorchWithStrengthLevel (String cameraId, int torchStrength)
: Legt die Helligkeit der Taschenlampe für den jeweiligencameraId
-Wert im Taschenlampenmodus. Wenn der Taschenlampenmodus ausgeschaltet undtorchStrength
ist größer als oder gleich1
, schaltet sich die Taschenlampe mit der Lautstärke ein. angegeben intorchStrength
.public int getTorchStrengthLevel (String cameraId)
: Gibt die Helligkeit des mitcameraId
verknüpften Blitzgeräts an.
CameraCharacteristics
Schlüssel
FLASH_INFO_STRENGTH_MAXIMUM_LEVEL
: Maximale Helligkeit. Der Kamera-HAL bewirbt diese Funktion, indem er Folgendes festlegt: einen Wert größer als1
.FLASH_INFO_STRENGTH_DEFAULT_LEVEL
: Standardmäßige Helligkeitsstufe der Taschenlampe.
Implementierung
Um die Funktion zur Steuerung der Taschenlampenstärke auf Ihrem Gerät zu unterstützen, verwenden Sie Folgendes: AIDL HAL-Schnittstellen für Kamera:
Standort: /camera/device/aidl/android/hardware/camera/device/ICameraDevice.aidl
Achten Sie darauf, dass Ihre HAL-Implementierung die folgenden Kameramerkmale bewirbt Tasten zur Unterstützung der Helligkeitsreglerfunktion:
Eine Referenz für die Kamera-HAL-Implementierung zur Steuerung der Taschenlampenstärke:
Siehe
EmulatedCameraDeviceHWLImpl.cpp
Zertifizierungsstufe
Führen Sie den Befehl folgenden VTS- und CTS-Tests:
- VTS:
/camera/provider/aidl/vts/VtsAidlHalCameraProvider\_TargetTest.cpp
- CTS:
/platform/cts/tests/camera/src/android/hardware/camera2/cts/FlashlightTest.java