Added in API level 23

TorchCallback

abstract class TorchCallback
kotlin.Any
   ↳ android.hardware.camera2.CameraManager.TorchCallback

A callback for camera flash torch modes becoming unavailable, disabled, or enabled.

The torch mode becomes unavailable when the camera device it belongs to becomes unavailable or other camera resources it needs become busy due to other higher priority camera activities. The torch mode becomes disabled when it was turned off or when the camera device it belongs to is no longer in use and other camera resources it needs are no longer busy. A camera's torch mode is turned off when an application calls setTorchMode to turn off the camera's torch mode, or when an application turns on another camera's torch mode if keeping multiple torch modes on simultaneously is not supported. The torch mode becomes enabled when it is turned on via setTorchMode.

The torch mode is available to set via setTorchMode only when it's in a disabled or enabled state.

Extend this callback and pass an instance of the subclass to android.hardware.camera2.CameraManager#registerTorchCallback to be notified of such status changes.

Summary

Public constructors

Public methods
open Unit
onTorchModeChanged(cameraId: String, enabled: Boolean)

A camera's torch mode has become enabled or disabled and can be changed via setTorchMode.

open Unit

A camera's torch mode has become unavailable to set via setTorchMode.

open Unit
onTorchStrengthLevelChanged(cameraId: String, newStrengthLevel: Int)

A camera's flash unit brightness level has been changed in torch mode via turnOnTorchWithStrengthLevel.

Public constructors

TorchCallback

TorchCallback()

Public methods

onTorchModeChanged

Added in API level 23
open fun onTorchModeChanged(
    cameraId: String,
    enabled: Boolean
): Unit

A camera's torch mode has become enabled or disabled and can be changed via setTorchMode.

The default implementation of this method does nothing.

Parameters
cameraId String: The unique identifier of the camera whose torch mode has been changed. This value cannot be null.
enabled Boolean: The state that the torch mode of the camera has been changed to. true when the torch mode has become on and available to be turned off. false when the torch mode has becomes off and available to be turned on.

onTorchModeUnavailable

Added in API level 23
open fun onTorchModeUnavailable(cameraId: String): Unit

A camera's torch mode has become unavailable to set via setTorchMode.

If torch mode was previously turned on by calling setTorchMode, it will be turned off before CameraManager.TorchCallback#onTorchModeUnavailable is invoked. setTorchMode will fail until the torch mode has entered a disabled or enabled state again.

The default implementation of this method does nothing.

Parameters
cameraId String: The unique identifier of the camera whose torch mode has become unavailable. This value cannot be null.

onTorchStrengthLevelChanged

Added in API level 33
open fun onTorchStrengthLevelChanged(
    cameraId: String,
    newStrengthLevel: Int
): Unit

A camera's flash unit brightness level has been changed in torch mode via turnOnTorchWithStrengthLevel. When the torch is turned OFF, this callback will not be triggered even though the torch strength level resets to default value android.hardware.camera2.CameraCharacteristics#FLASH_INFO_STRENGTH_DEFAULT_LEVEL

The default implementation of this method does nothing.

Parameters
cameraId String: The unique identifier of the camera whose flash unit brightness level has been changed. This value cannot be null.
newStrengthLevel Int: The brightness level of the flash unit that has been changed to.