This repository was archived by the owner on Jun 16, 2023. It is now read-only.
File tree Expand file tree Collapse file tree 1 file changed +21
-2
lines changed
android/src/main/java/com/google/android/cameraview Expand file tree Collapse file tree 1 file changed +21
-2
lines changed Original file line number Diff line number Diff line change @@ -1011,7 +1011,18 @@ void setFocusArea(final float x, final float y) {
10111011 public void run () {
10121012 synchronized (Camera1 .this ){
10131013 if (mCamera != null ) {
1014- Camera .Parameters parameters = mCamera .getParameters ();
1014+ Camera .Parameters parameters = null ;
1015+
1016+ // This might crash on some devices if the camera is not
1017+ // available/locked, with a RuntimeException("getParameters failed (empty parameters)")
1018+ try {
1019+ parameters = mCamera .getParameters ();
1020+ }
1021+ catch (Exception e ){
1022+ Log .e ("CAMERA_1::" , "setFocusArea.getParameters failed" , e );
1023+ parameters = null ;
1024+ }
1025+
10151026 if (parameters == null ) return ;
10161027
10171028 String focusMode = parameters .getFocusMode ();
@@ -1104,7 +1115,15 @@ private void resetFocus(final boolean success, final Camera camera) {
11041115 public void run () {
11051116 if (mCamera != null ) {
11061117 mCamera .cancelAutoFocus ();
1107- Camera .Parameters parameters = mCamera .getParameters ();
1118+
1119+ Camera .Parameters parameters = null ;
1120+ try {
1121+ parameters = mCamera .getParameters ();
1122+ }
1123+ catch (Exception e ){
1124+ Log .e ("CAMERA_1::" , "resetFocus.getParameters failed" , e );
1125+ parameters = null ;
1126+ }
11081127 if (parameters == null ) return ;
11091128
11101129 if (parameters .getFocusMode () != Camera .Parameters .FOCUS_MODE_CONTINUOUS_PICTURE ) {
You can’t perform that action at this time.
0 commit comments