summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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();