diff --git a/res/values/arrays.xml b/res/values/arrays.xml
index 67e426d507b..05bf78aadd1 100644
--- a/res/values/arrays.xml
+++ b/res/values/arrays.xml
@@ -557,6 +557,7 @@
- Location
- Personal
+ - Messaging
- Device
@@ -568,14 +569,23 @@
- vibrate
- read contacts
- write contacts
- - read calls
- - write calls
+ - read call log
+ - write call log
- read calendar
- write calendar
- wi-fi scan
- notification
- cell scan
- call phone
+ - read SMS
+ - write SMS
+ - receive SMS
+ - receive emergency SMS
+ - receive MMS
+ - receive WAP push
+ - send SMS
+ - read ICC SMS
+ - write ICC SMS
@@ -586,14 +596,23 @@
- Vibrate
- Read contacts
- Write contacts
- - Read calls
- - Write calls
+ - Read call log
+ - Write call log
- Read calendar
- Write calendar
- Location
- Post notification
- Location
- Call phone
+ - Receive SMS/MMS
+ - Send SMS/MMS
+ - Receive SMS/MMS
+ - Receive SMS/MMS
+ - Receive SMS/MMS
+ - Receive SMS/MMS
+ - Send SMS/MMS
+ - Receive SMS/MMS
+ - Send SMS/MMS
diff --git a/src/com/android/settings/applications/AppOpsState.java b/src/com/android/settings/applications/AppOpsState.java
index 43fa090cdd7..b2d862f66e9 100644
--- a/src/com/android/settings/applications/AppOpsState.java
+++ b/src/com/android/settings/applications/AppOpsState.java
@@ -124,6 +124,27 @@ public class AppOpsState {
true }
);
+ public static final OpsTemplate MESSAGING_TEMPLATE = new OpsTemplate(
+ new int[] { AppOpsManager.OP_READ_SMS,
+ AppOpsManager.OP_RECEIVE_SMS,
+ AppOpsManager.OP_RECEIVE_EMERGECY_SMS,
+ AppOpsManager.OP_RECEIVE_MMS,
+ AppOpsManager.OP_RECEIVE_WAP_PUSH,
+ AppOpsManager.OP_WRITE_SMS,
+ AppOpsManager.OP_SEND_SMS,
+ AppOpsManager.OP_READ_ICC_SMS,
+ AppOpsManager.OP_WRITE_ICC_SMS },
+ new boolean[] { true,
+ true,
+ true,
+ true,
+ true,
+ true,
+ true,
+ true,
+ true }
+ );
+
public static final OpsTemplate DEVICE_TEMPLATE = new OpsTemplate(
new int[] { AppOpsManager.OP_VIBRATE,
AppOpsManager.OP_POST_NOTIFICATION,
@@ -134,7 +155,7 @@ public class AppOpsState {
);
public static final OpsTemplate[] ALL_TEMPLATES = new OpsTemplate[] {
- LOCATION_TEMPLATE, PERSONAL_TEMPLATE, DEVICE_TEMPLATE
+ LOCATION_TEMPLATE, PERSONAL_TEMPLATE, MESSAGING_TEMPLATE, DEVICE_TEMPLATE
};
/**
diff --git a/src/com/android/settings/applications/AppOpsSummary.java b/src/com/android/settings/applications/AppOpsSummary.java
index 1e0cd4115f6..b0d9ad158b0 100644
--- a/src/com/android/settings/applications/AppOpsSummary.java
+++ b/src/com/android/settings/applications/AppOpsSummary.java
@@ -42,6 +42,7 @@ public class AppOpsSummary extends Fragment {
static AppOpsState.OpsTemplate[] sPageTemplates = new AppOpsState.OpsTemplate[] {
AppOpsState.LOCATION_TEMPLATE,
AppOpsState.PERSONAL_TEMPLATE,
+ AppOpsState.MESSAGING_TEMPLATE,
AppOpsState.DEVICE_TEMPLATE
};