From d683d25f4795a2fbb22851781eea0a975527cb90 Mon Sep 17 00:00:00 2001 From: Joshua Duong Date: Thu, 25 Jun 2020 20:24:21 -0700 Subject: [PATCH] [qrcode] Open any available camera if back camera isn't available. Bug: 159956551 Test: make RunSettingsRoboTests ROBOTEST_FILTER=QrCameraTest Change-Id: I2aa01330c8d12c478f8392f66359131638590b77 --- src/com/android/settings/wifi/qrcode/QrCamera.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/wifi/qrcode/QrCamera.java b/src/com/android/settings/wifi/qrcode/QrCamera.java index 8e4b39fb0b0..3865eb1f116 100644 --- a/src/com/android/settings/wifi/qrcode/QrCamera.java +++ b/src/com/android/settings/wifi/qrcode/QrCamera.java @@ -299,6 +299,13 @@ public class QrCamera extends Handler { break; } } + if (mCamera == null && numberOfCameras > 0) { + Log.i(TAG, "Can't find back camera. Opening a different camera"); + Camera.getCameraInfo(0, cameraInfo); + releaseCamera(); + mCamera = Camera.open(0); + mCameraOrientation = cameraInfo.orientation; + } } catch (RuntimeException e) { Log.e(TAG, "Fail to open camera: " + e); mCamera = null; @@ -308,7 +315,7 @@ public class QrCamera extends Handler { try { if (mCamera == null) { - throw new IOException("Cannot find available back camera"); + throw new IOException("Cannot find available camera"); } mCamera.setPreviewTexture(surface); setCameraParameter();