diff options
Diffstat (limited to 'camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java')
-rw-r--r-- | camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java b/camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java index 7270b22..1fcf3b5 100644 --- a/camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java +++ b/camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java @@ -28,10 +28,12 @@ public class CameraExceptionHandler { private CameraExceptionCallback mCallback = new CameraExceptionCallback() { @Override + public void onCameraError(int errorCode) { + } + @Override public void onCameraException(RuntimeException e) { throw e; } - @Override public void onDispatchThreadException(RuntimeException e) { throw e; @@ -42,6 +44,7 @@ public class CameraExceptionHandler { * A callback helps to handle RuntimeException thrown by camera framework. */ public static interface CameraExceptionCallback { + public void onCameraError(int errorCode); public void onCameraException(RuntimeException e); public void onDispatchThreadException(RuntimeException e); } @@ -69,6 +72,21 @@ public class CameraExceptionHandler { } /** + * Invoke @{link CameraExceptionCallback} when an error is reported by Android camera framework. + * + * @param errorCode An integer to represent the error code. + * @see android.hardware.Camera#setErrorCallback(android.hardware.Camera.ErrorCallback) + */ + public void onCameraError(final int errorCode) { + mHandler.post(new Runnable() { + @Override + public void run() { + mCallback.onCameraError(errorCode); + } + }); + } + + /** * Invoke @{link CameraExceptionCallback} when a runtime exception is thrown by Android camera * framework. * |