summaryrefslogtreecommitdiff
path: root/src/com/android/camera/DisableCameraReceiver.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/camera/DisableCameraReceiver.java')
-rw-r--r--src/com/android/camera/DisableCameraReceiver.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/com/android/camera/DisableCameraReceiver.java b/src/com/android/camera/DisableCameraReceiver.java
index 5237c1d58..ed58783e9 100644
--- a/src/com/android/camera/DisableCameraReceiver.java
+++ b/src/com/android/camera/DisableCameraReceiver.java
@@ -42,7 +42,7 @@ public class DisableCameraReceiver extends BroadcastReceiver {
? hasBackCamera()
: hasCamera();
- if (!needCameraActivity) {
+ if (!needCameraActivity && !supportExternalCamera(context)) {
Log.i(TAG, "disable all camera activities");
for (int i = 0; i < ACTIVITIES.length; i++) {
disableComponent(context, ACTIVITIES[i]);
@@ -53,6 +53,11 @@ public class DisableCameraReceiver extends BroadcastReceiver {
disableComponent(context, "com.android.camera.DisableCameraReceiver");
}
+ private boolean supportExternalCamera(Context context) {
+ PackageManager pm = context.getPackageManager();
+ return pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_EXTERNAL);
+ }
+
private boolean hasCamera() {
int n = android.hardware.Camera.getNumberOfCameras();
Log.i(TAG, "number of camera: " + n);