summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorzhuw <zhuw@codeaurora.org>2018-04-03 18:38:10 +0800
committerGerrit - the friendly Code Review server <code-review@localhost>2018-04-10 02:02:16 -0700
commitfe0807bd7bd584925c222f9439793edca0f4482f (patch)
tree6bdd0475b0ac198e72f346cfebbcc60fb7dd8faa
parent6f15f28787a9d04cf2e5da30c42617346fa5edbb (diff)
downloadandroid_packages_apps_Snap-fe0807bd7bd584925c222f9439793edca0f4482f.tar.gz
android_packages_apps_Snap-fe0807bd7bd584925c222f9439793edca0f4482f.tar.bz2
android_packages_apps_Snap-fe0807bd7bd584925c222f9439793edca0f4482f.zip
Fix open camera FC when no camera devices connected
if no camera devices connected , finish activity Change-Id: I0bc8e0dda834abd311a8f77e70941344cf8becd5
-rw-r--r--src/com/android/camera/CameraActivity.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/com/android/camera/CameraActivity.java b/src/com/android/camera/CameraActivity.java
index 75b761e8c..b75ec1a09 100644
--- a/src/com/android/camera/CameraActivity.java
+++ b/src/com/android/camera/CameraActivity.java
@@ -16,6 +16,7 @@
package com.android.camera;
+import android.hardware.camera2.CameraAccessException;
import android.os.Parcel;
import android.os.Parcelable;
import android.view.Display;
@@ -1798,6 +1799,11 @@ public class CameraActivity extends Activity
finish();
return;
}
+ if (!cameraConnected()) {
+ super.onResume();
+ Log.v(TAG, "onResume: No camera devices connected.");
+ finish();
+ }
SettingsManager settingsManager = SettingsManager.getInstance();
if (settingsManager == null) {
SettingsManager.createInstance(this);
@@ -1847,6 +1853,17 @@ public class CameraActivity extends Activity
sendBroadcast(intent);
}
+ private boolean cameraConnected() {
+ android.hardware.camera2.CameraManager manager =
+ (android.hardware.camera2.CameraManager) getSystemService(Context.CAMERA_SERVICE);
+ try {
+ return manager.getCameraIdList().length > 0;
+ } catch (CameraAccessException e) {
+ e.printStackTrace();
+ return false;
+ }
+ }
+
@Override
public void onStart() {
super.onStart();