summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAlan Newberger <alann@google.com>2015-07-08 09:51:04 -0700
committerAlan Newberger <alann@google.com>2015-07-08 09:51:04 -0700
commitc2d5d078821ca5e8de0c0d03b6603bf7c505c53f (patch)
treec0c281b32d60db5d4fc376ab3e0975db372ee111 /src
parenta5380779fdb646b295dd84a0db4cb48c0d98b63a (diff)
downloadandroid_packages_apps_Camera2-c2d5d078821ca5e8de0c0d03b6603bf7c505c53f.tar.gz
android_packages_apps_Camera2-c2d5d078821ca5e8de0c0d03b6603bf7c505c53f.tar.bz2
android_packages_apps_Camera2-c2d5d078821ca5e8de0c0d03b6603bf7c505c53f.zip
Restrict permission checks to M devices
Add an ApiHelper check and only call checkSelfPermission if we are on M and the methods exist. BUG=22345681 Change-Id: Icda8d40057b5492502858ced731a749a2f66abf8
Diffstat (limited to 'src')
-rw-r--r--src/com/android/camera/CameraActivity.java5
-rw-r--r--src/com/android/camera/util/ApiHelper.java5
2 files changed, 10 insertions, 0 deletions
diff --git a/src/com/android/camera/CameraActivity.java b/src/com/android/camera/CameraActivity.java
index 586a66dd5..8cedeb781 100644
--- a/src/com/android/camera/CameraActivity.java
+++ b/src/com/android/camera/CameraActivity.java
@@ -1875,6 +1875,11 @@ public class CameraActivity extends QuickActivity
* Non-critical permission is location.
*/
private void checkPermissions() {
+ if (!ApiHelper.isMOrHigher()) {
+ Log.v(TAG, "not running on M, skipping permission checks");
+ mHasCriticalPermissions = true;
+ return;
+ }
if (checkSelfPermission(Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED &&
checkSelfPermission(Manifest.permission.RECORD_AUDIO) == PackageManager.PERMISSION_GRANTED &&
diff --git a/src/com/android/camera/util/ApiHelper.java b/src/com/android/camera/util/ApiHelper.java
index 6aadc6250..1b97553a2 100644
--- a/src/com/android/camera/util/ApiHelper.java
+++ b/src/com/android/camera/util/ApiHelper.java
@@ -112,4 +112,9 @@ public class ApiHelper {
return Build.VERSION.SDK_INT == Build.VERSION_CODES.LOLLIPOP
|| Build.VERSION.SDK_INT == 22; // Lollipop MR1
}
+
+ public static boolean isMOrHigher() {
+ return Build.VERSION.SDK_INT >= Build.VERSION_CODES.MNC
+ || "MNC".equals(Build.VERSION.CODENAME);
+ }
}