diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 1a6aea3a97f..c8c45a7f447 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -802,10 +802,8 @@
-
diff --git a/res/values/arrays.xml b/res/values/arrays.xml
index e56ce01eeb3..d02ee1ffee3 100644
--- a/res/values/arrays.xml
+++ b/res/values/arrays.xml
@@ -589,6 +589,7 @@
- Location
- Personal
- Messaging
+ - Media
- Device
@@ -625,6 +626,15 @@
- play audio
- read clipboard
- modify clipboard
+ - media buttons
+ - audio focus
+ - master volume
+ - voice volume
+ - ring volume
+ - media volume
+ - alarm volume
+ - notification volume
+ - bluetooth volume
diff --git a/src/com/android/settings/applications/AppOpsState.java b/src/com/android/settings/applications/AppOpsState.java
index 6cdbdaf8d7d..be1c73fa2eb 100644
--- a/src/com/android/settings/applications/AppOpsState.java
+++ b/src/com/android/settings/applications/AppOpsState.java
@@ -149,29 +149,51 @@ public class AppOpsState {
true }
);
- public static final OpsTemplate DEVICE_TEMPLATE = new OpsTemplate(
+ public static final OpsTemplate MEDIA_TEMPLATE = new OpsTemplate(
new int[] { AppOpsManager.OP_VIBRATE,
- AppOpsManager.OP_POST_NOTIFICATION,
+ AppOpsManager.OP_CAMERA,
+ AppOpsManager.OP_RECORD_AUDIO,
+ AppOpsManager.OP_PLAY_AUDIO,
+ AppOpsManager.OP_TAKE_MEDIA_BUTTONS,
+ AppOpsManager.OP_TAKE_AUDIO_FOCUS,
+ AppOpsManager.OP_AUDIO_MASTER_VOLUME,
+ AppOpsManager.OP_AUDIO_VOICE_VOLUME,
+ AppOpsManager.OP_AUDIO_RING_VOLUME,
+ AppOpsManager.OP_AUDIO_MEDIA_VOLUME,
+ AppOpsManager.OP_AUDIO_ALARM_VOLUME,
+ AppOpsManager.OP_AUDIO_NOTIFICATION_VOLUME,
+ AppOpsManager.OP_AUDIO_BLUETOOTH_VOLUME, },
+ new boolean[] { false,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false }
+ );
+
+ public static final OpsTemplate DEVICE_TEMPLATE = new OpsTemplate(
+ new int[] { AppOpsManager.OP_POST_NOTIFICATION,
AppOpsManager.OP_ACCESS_NOTIFICATIONS,
AppOpsManager.OP_CALL_PHONE,
AppOpsManager.OP_WRITE_SETTINGS,
- AppOpsManager.OP_SYSTEM_ALERT_WINDOW,
- AppOpsManager.OP_CAMERA,
- AppOpsManager.OP_RECORD_AUDIO,
- AppOpsManager.OP_PLAY_AUDIO },
+ AppOpsManager.OP_SYSTEM_ALERT_WINDOW },
new boolean[] { false,
- false,
true,
true,
true,
- true,
- true,
- true,
- true }
+ true, }
);
public static final OpsTemplate[] ALL_TEMPLATES = new OpsTemplate[] {
- LOCATION_TEMPLATE, PERSONAL_TEMPLATE, MESSAGING_TEMPLATE, DEVICE_TEMPLATE
+ LOCATION_TEMPLATE, PERSONAL_TEMPLATE, MESSAGING_TEMPLATE,
+ MEDIA_TEMPLATE, DEVICE_TEMPLATE
};
/**
diff --git a/src/com/android/settings/applications/AppOpsSummary.java b/src/com/android/settings/applications/AppOpsSummary.java
index b0d9ad158b0..4cee8e583a8 100644
--- a/src/com/android/settings/applications/AppOpsSummary.java
+++ b/src/com/android/settings/applications/AppOpsSummary.java
@@ -43,6 +43,7 @@ public class AppOpsSummary extends Fragment {
AppOpsState.LOCATION_TEMPLATE,
AppOpsState.PERSONAL_TEMPLATE,
AppOpsState.MESSAGING_TEMPLATE,
+ AppOpsState.MEDIA_TEMPLATE,
AppOpsState.DEVICE_TEMPLATE
};