Package org.robolectric.shadows
Class ShadowCameraManager
java.lang.Object
org.robolectric.shadows.ShadowCameraManager
@Implements(android.hardware.camera2.CameraManager.class)
public class ShadowCameraManager
extends Object
Shadow class for
CameraManager-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classShadow class for internal class CameraManager$CameraManagerGlobal -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final Set<android.hardware.camera2.impl.CameraDeviceImpl> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddCamera(String cameraId, CameraCharacteristics characteristics) Adds the given cameraId and characteristics to this shadow.protected CameraCharacteristicsgetCameraCharacteristics(String cameraId) protected String[]booleangetTorchMode(String cameraId) Returns what the supplied camera's torch is set to.protected CameraDeviceopenCameraDeviceUserAsync(String cameraId, CameraDevice.StateCallback callback, Handler handler) EnablesCameraManager.openCamera(String, StateCallback, Handler)to open aCameraDevice.protected CameraDeviceopenCameraDeviceUserAsync(String cameraId, CameraDevice.StateCallback callback, Handler handler, int uid) protected CameraDeviceopenCameraDeviceUserAsync(String cameraId, CameraDevice.StateCallback callback, Executor executor, int uid) protected CameraDeviceopenCameraDeviceUserAsync(String cameraId, CameraDevice.StateCallback callback, Executor executor, int unusedClientUid, int unusedOomScoreOffset) protected CameraDeviceopenCameraDeviceUserAsync(String cameraId, CameraDevice.StateCallback callback, Executor executor, int uid, int oomScoreOffset, boolean overrideToPortrait) protected CameraDeviceopenCameraDeviceUserAsync(String cameraId, CameraDevice.StateCallback callback, Executor executor, int uid, int oomScoreOffset, int rotationOverride) protected CameraDeviceopenCameraDeviceUserAsyncPostV(String cameraId, CameraDevice.StateCallback callback, Executor executor, int unusedClientUid, int unusedOomScoreOffset, boolean unused) protected voidregisterAvailabilityCallback(CameraManager.AvailabilityCallback callback, Handler handler) protected voidregisterTorchCallback(CameraManager.TorchCallback callback, Handler handler) voidremoveCamera(String cameraId) Removes the given cameraId and associated characteristics from this shadow.static voidreset()protected voidsetTorchMode(String cameraId, boolean enabled) voidTriggers a disconnect event, where any open camera will be disconnected (simulating the case where another app takes control of the camera).protected voidprotected voidprotected voidupdateCameraCallback(CameraDevice device, CameraDevice.StateCallback callback, Handler handler, Executor executor)
-
Field Details
-
createdCameras
-
-
Constructor Details
-
ShadowCameraManager
public ShadowCameraManager()
-
-
Method Details
-
reset
-
getCameraIdList
- Throws:
CameraAccessException
-
getCameraCharacteristics
@Implementation @Nonnull protected CameraCharacteristics getCameraCharacteristics(@Nonnull String cameraId) -
setTorchMode
-
openCameraDeviceUserAsync
@Implementation(minSdk=34, maxSdk=34) protected CameraDevice openCameraDeviceUserAsync(String cameraId, CameraDevice.StateCallback callback, Executor executor, int uid, int oomScoreOffset, boolean overrideToPortrait) -
openCameraDeviceUserAsync
@Implementation(minSdk=35, maxSdk=35) protected CameraDevice openCameraDeviceUserAsync(String cameraId, CameraDevice.StateCallback callback, Executor executor, int uid, int oomScoreOffset, int rotationOverride) -
openCameraDeviceUserAsyncPostV
@Implementation(methodName="openCameraDeviceUserAsync", minSdk=36) protected CameraDevice openCameraDeviceUserAsyncPostV(String cameraId, CameraDevice.StateCallback callback, Executor executor, int unusedClientUid, int unusedOomScoreOffset, boolean unused) -
openCameraDeviceUserAsync
@Implementation(minSdk=31, maxSdk=33) protected CameraDevice openCameraDeviceUserAsync(String cameraId, CameraDevice.StateCallback callback, Executor executor, int unusedClientUid, int unusedOomScoreOffset) -
openCameraDeviceUserAsync
@Implementation(minSdk=28, maxSdk=30) protected CameraDevice openCameraDeviceUserAsync(String cameraId, CameraDevice.StateCallback callback, Executor executor, int uid) throws CameraAccessException - Throws:
CameraAccessException
-
openCameraDeviceUserAsync
@Implementation(minSdk=25, maxSdk=27) protected CameraDevice openCameraDeviceUserAsync(String cameraId, CameraDevice.StateCallback callback, Handler handler, int uid) throws CameraAccessException - Throws:
CameraAccessException
-
openCameraDeviceUserAsync
@Implementation(maxSdk=24) protected CameraDevice openCameraDeviceUserAsync(String cameraId, CameraDevice.StateCallback callback, Handler handler) throws CameraAccessException EnablesCameraManager.openCamera(String, StateCallback, Handler)to open aCameraDevice.If the provided cameraId exists, this will always post
CameraDevice.StateCallback.onOpened(CameraDevice)to the providedHandler. Unlike on real Android, this will not check if the camera has been disabled by device policy and does not attempt to connect to the camera service, soCameraDevice.StateCallback.onError(CameraDevice, int)andCameraDevice.StateCallback.onDisconnected(CameraDevice)will not be triggered byCameraManager.openCamera(String, StateCallback, Handler).- Throws:
CameraAccessException
-
registerAvailabilityCallback
@Implementation protected void registerAvailabilityCallback(CameraManager.AvailabilityCallback callback, Handler handler) -
unregisterAvailabilityCallback
@Implementation protected void unregisterAvailabilityCallback(CameraManager.AvailabilityCallback callback) -
registerTorchCallback
@Implementation(minSdk=23) protected void registerTorchCallback(CameraManager.TorchCallback callback, Handler handler) -
unregisterTorchCallback
@Implementation(minSdk=23) protected void unregisterTorchCallback(CameraManager.TorchCallback callback) -
addCamera
Adds the given cameraId and characteristics to this shadow.The result from
getCameraIdList()will be in the order in which cameras were added.- Throws:
IllegalArgumentException- if there's already an existing camera with the given id.
-
removeCamera
Removes the given cameraId and associated characteristics from this shadow.- Throws:
IllegalArgumentException- if there is not an existing camera with the given id.
-
getTorchMode
Returns what the supplied camera's torch is set to. -
triggerDisconnect
public void triggerDisconnect()Triggers a disconnect event, where any open camera will be disconnected (simulating the case where another app takes control of the camera). -
updateCameraCallback
protected void updateCameraCallback(CameraDevice device, CameraDevice.StateCallback callback, @Nullable Handler handler, @Nullable Executor executor)
-