The second Android 11 Developer Preview is now available, test it out and share your feedback.

CameraInfo

interface CameraInfo
androidx.camera.core.CameraInfo

An interface for retrieving camera information.

Applications can retrieve an instance via Camera#getCameraInfo().

Summary

Public methods

abstract Int

Returns the sensor rotation in degrees, relative to the device's "natural" (default) orientation.

abstract Int
getSensorRotationDegrees(relativeRotation: Int)

Returns the sensor rotation, in degrees, relative to the given rotation value.

abstract LiveData<Int!>

Returns a LiveData of current TorchState.

abstract LiveData<ZoomState!>

Returns a LiveData of ZoomState.

abstract Boolean

Returns if flash unit is available or not.

Public methods

getSensorRotationDegrees

abstract fun getSensorRotationDegrees(): Int

Returns the sensor rotation in degrees, relative to the device's "natural" (default) orientation.

Return
Int The sensor rotation in degrees, relative to device's "natural" (default) orientation.

See Also

  • <a href="https://developer.android.com/guide/topics/sensors/sensors_overview#sensors-coords">

getSensorRotationDegrees

abstract fun getSensorRotationDegrees(relativeRotation: Int): Int

Returns the sensor rotation, in degrees, relative to the given rotation value.

Valid values for the relative rotation are Surface#ROTATION_0 (natural), , Surface#ROTATION_180, Surface#ROTATION_270.

Parameters
relativeRotation Int: The rotation relative to which the output will be calculated.
Return
Int The sensor rotation in degrees.

getTorchState

@NonNull abstract fun getTorchState(): LiveData<Int!>

Returns a LiveData of current TorchState.

The torch can be turned on and off via CameraControl#enableTorch(boolean) which will trigger the change event to the returned LiveData. Apps can either get immediate value via LiveData#getValue() or observe it via LiveData#observe(LifecycleOwner, Observer) to update torch UI accordingly.

If the camera doesn't have a flash unit (see hasFlashUnit()), then the torch state will be TorchState#OFF.

Return
LiveData<Int!> a LiveData containing current torch state.

getZoomState

@NonNull abstract fun getZoomState(): LiveData<ZoomState!>

Returns a LiveData of ZoomState.

The LiveData will be updated whenever the set zoom state has been changed. This can occur when the application updates the zoom via CameraControl#setZoomRatio(float) or CameraControl#setLinearZoom(float). The zoom state can also change anytime a camera starts up, for example when a UseCase is bound to it.

hasFlashUnit

abstract fun hasFlashUnit(): Boolean

Returns if flash unit is available or not.