diff options
author | Tom Taylor <tomtaylor@google.com> | 2011-11-07 14:16:44 -0800 |
---|---|---|
committer | Tom Taylor <tomtaylor@google.com> | 2011-11-07 14:16:44 -0800 |
commit | 03da2f00aac04e6565a02cf5a9bf6bb1ec926930 (patch) | |
tree | c137b907a5aca791ff4a9c20292adc86e8efd415 | |
parent | 064975c27cbca412e682fa152ce00af14027ab4f (diff) | |
download | frameworks_base-03da2f00aac04e6565a02cf5a9bf6bb1ec926930.zip frameworks_base-03da2f00aac04e6565a02cf5a9bf6bb1ec926930.tar.gz frameworks_base-03da2f00aac04e6565a02cf5a9bf6bb1ec926930.tar.bz2 |
Add new secure setting for controlling Messaging notifications
Bug 5552615
We're adding a new intent to allow 3rd party apps to disable
the Messaging app's notification. We want any app to be able to query
the setting of whether sms notifications are on or off, but only allow
system apps, particularly the Messaging app, to change that setting.
Other apps can change the setting by firing off an intent which brings
up a dialog activity in the Messaging app that'll let them turn off
Messaging notifications.
Change-Id: I4d2721191b86010efb383a24c28d911496440657
-rw-r--r-- | api/current.txt | 1 | ||||
-rw-r--r-- | core/java/android/provider/Settings.java | 10 | ||||
-rwxr-xr-x | core/java/android/provider/Telephony.java | 10 | ||||
-rw-r--r-- | packages/SettingsProvider/res/values/defaults.xml | 4 | ||||
-rw-r--r-- | packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java | 4 |
5 files changed, 28 insertions, 1 deletions
diff --git a/api/current.txt b/api/current.txt index 4e41c29..95072f7 100644 --- a/api/current.txt +++ b/api/current.txt @@ -17363,6 +17363,7 @@ package android.provider { field public static final java.lang.String LOCK_PATTERN_TACTILE_FEEDBACK_ENABLED = "lock_pattern_tactile_feedback_enabled"; field public static final java.lang.String LOCK_PATTERN_VISIBLE = "lock_pattern_visible_pattern"; field public static final deprecated java.lang.String LOGGING_ID = "logging_id"; + field public static final java.lang.String MESSAGING_APP_NOTIFICATIONS = "messaging_app_notifications"; field public static final java.lang.String NETWORK_PREFERENCE = "network_preference"; field public static final java.lang.String PARENTAL_CONTROL_ENABLED = "parental_control_enabled"; field public static final java.lang.String PARENTAL_CONTROL_LAST_UPDATE = "parental_control_last_update"; diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index a0652f7..63b3664 100644 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -4068,6 +4068,13 @@ public final class Settings { "contacts_preauth_uri_expiration"; /** + * Whether the Messaging app posts notifications. + * 0=disabled. 1=enabled. + */ + public static final String MESSAGING_APP_NOTIFICATIONS = "messaging_app_notifications"; + + + /** * This are the settings to be backed up. * * NOTE: Settings are backed up and restored in the order they appear @@ -4104,7 +4111,8 @@ public final class Settings { MOUNT_UMS_NOTIFY_ENABLED, UI_NIGHT_MODE, LOCK_SCREEN_OWNER_INFO, - LOCK_SCREEN_OWNER_INFO_ENABLED + LOCK_SCREEN_OWNER_INFO_ENABLED, + MESSAGING_APP_NOTIFICATIONS }; /** diff --git a/core/java/android/provider/Telephony.java b/core/java/android/provider/Telephony.java index 0e6d07d..8eb9da1 100755 --- a/core/java/android/provider/Telephony.java +++ b/core/java/android/provider/Telephony.java @@ -1838,5 +1838,15 @@ public final class Telephony { public static final String EXTRA_PLMN = "plmn"; public static final String EXTRA_SHOW_SPN = "showSpn"; public static final String EXTRA_SPN = "spn"; + + /** + * Activity Action: Shows a dialog to turn off Messaging app notification. + * <p>Input: Nothing. + * <p>Output: Nothing. + */ + @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION) + public static final String ACTION_MESSAGING_APP_NOTIFICATIONS = + "android.provider.Telephony.MESSAGING_APP_NOTIFICATIONS"; + } } diff --git a/packages/SettingsProvider/res/values/defaults.xml b/packages/SettingsProvider/res/values/defaults.xml index 3920257..03d5bd2 100644 --- a/packages/SettingsProvider/res/values/defaults.xml +++ b/packages/SettingsProvider/res/values/defaults.xml @@ -133,4 +133,8 @@ <bool name="def_dtmf_tones_enabled">true</bool> <!-- Default for UI touch sounds enabled --> <bool name="def_sound_effects_enabled">true</bool> + + <!-- Default for Messaging app notifications enabled --> + <bool name="def_messaging_app_notifications_on">true</bool> + </resources> diff --git a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java index 5495d08..44194f0 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java @@ -1472,6 +1472,10 @@ public class DatabaseHelper extends SQLiteOpenHelper { loadBooleanSetting(stmt, Settings.Secure.TOUCH_EXPLORATION_ENABLED, R.bool.def_touch_exploration_enabled); + + loadBooleanSetting(stmt, Settings.Secure.MESSAGING_APP_NOTIFICATIONS, + R.bool.def_messaging_app_notifications_on); + } finally { if (stmt != null) stmt.close(); } |