diff options
| author | 2023-01-10 15:22:00 +0000 | |
|---|---|---|
| committer | 2023-01-10 15:22:00 +0000 | |
| commit | a27acd162245fd36d9d0ce09148cfe79e63b3cff (patch) | |
| tree | 098900bd5703bb9a654cf77e6e7c8bf735979a1a | |
| parent | ca67967fbc120934df7b867f375ad85ebd570877 (diff) | |
| parent | fccd026e690016cd7b0885da39e3b14ad07ac9ae (diff) | |
Merge "Disallow apps from setting a NotificationChannel as "importantConversation"" into tm-qpr-dev
| -rw-r--r-- | services/core/java/com/android/server/notification/PreferencesHelper.java | 1 | ||||
| -rw-r--r-- | services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java | 14 |
2 files changed, 9 insertions, 6 deletions
diff --git a/services/core/java/com/android/server/notification/PreferencesHelper.java b/services/core/java/com/android/server/notification/PreferencesHelper.java index d8aa469bcd81..cdcf6c4ea206 100644 --- a/services/core/java/com/android/server/notification/PreferencesHelper.java +++ b/services/core/java/com/android/server/notification/PreferencesHelper.java @@ -1005,6 +1005,7 @@ public class PreferencesHelper implements RankingConfig { channel.setAllowBubbles(existing != null ? existing.getAllowBubbles() : NotificationChannel.DEFAULT_ALLOW_BUBBLE); + channel.setImportantConversation(false); } clearLockedFieldsLocked(channel); diff --git a/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java b/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java index 598a22bbde39..770feaba9303 100644 --- a/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java +++ b/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java @@ -1703,6 +1703,7 @@ public class PreferencesHelperTest extends UiServiceTestCase { channel.setLockscreenVisibility(Notification.VISIBILITY_SECRET); channel.setShowBadge(true); channel.setAllowBubbles(false); + channel.setImportantConversation(true); int lockMask = 0; for (int i = 0; i < NotificationChannel.LOCKABLE_FIELDS.length; i++) { lockMask |= NotificationChannel.LOCKABLE_FIELDS[i]; @@ -1718,6 +1719,7 @@ public class PreferencesHelperTest extends UiServiceTestCase { assertEquals(channel.shouldShowLights(), savedChannel.shouldShowLights()); assertFalse(savedChannel.canBypassDnd()); assertFalse(Notification.VISIBILITY_SECRET == savedChannel.getLockscreenVisibility()); + assertFalse(channel.isImportantConversation()); assertEquals(channel.canShowBadge(), savedChannel.canShowBadge()); assertEquals(channel.canBubble(), savedChannel.canBubble()); @@ -4396,7 +4398,7 @@ public class PreferencesHelperTest extends UiServiceTestCase { new NotificationChannel("A person calls", "calls from A", IMPORTANCE_DEFAULT); channel2.setConversationId(calls.getId(), convoId); channel2.setImportantConversation(true); - mHelper.createNotificationChannel(PKG_O, UID_O, channel2, true, false); + mHelper.createNotificationChannel(PKG_O, UID_O, channel2, false, false); List<ConversationChannelWrapper> convos = mHelper.getConversations(IntArray.wrap(new int[] {0}), false); @@ -4473,7 +4475,7 @@ public class PreferencesHelperTest extends UiServiceTestCase { new NotificationChannel("A person calls", "calls from A", IMPORTANCE_DEFAULT); channel2.setConversationId(calls.getId(), convoId); channel2.setImportantConversation(true); - mHelper.createNotificationChannel(PKG_O, UID_O, channel2, true, false); + mHelper.createNotificationChannel(PKG_O, UID_O, channel2, false, false); List<ConversationChannelWrapper> convos = mHelper.getConversations(IntArray.wrap(new int[] {0}), false); @@ -4501,13 +4503,13 @@ public class PreferencesHelperTest extends UiServiceTestCase { new NotificationChannel("A person msgs", "messages from A", IMPORTANCE_DEFAULT); channel.setConversationId(messages.getId(), convoId); channel.setImportantConversation(true); - mHelper.createNotificationChannel(PKG_O, UID_O, channel, true, false); + mHelper.createNotificationChannel(PKG_O, UID_O, channel, false, false); NotificationChannel diffConvo = new NotificationChannel("B person msgs", "messages from B", IMPORTANCE_DEFAULT); diffConvo.setConversationId(p.getId(), "different convo"); diffConvo.setImportantConversation(true); - mHelper.createNotificationChannel(PKG_P, UID_P, diffConvo, true, false); + mHelper.createNotificationChannel(PKG_P, UID_P, diffConvo, false, false); NotificationChannel channel2 = new NotificationChannel("A person calls", "calls from A", IMPORTANCE_DEFAULT); @@ -4534,7 +4536,7 @@ public class PreferencesHelperTest extends UiServiceTestCase { new NotificationChannel("A person msgs", "messages from A", IMPORTANCE_DEFAULT); channel.setConversationId(messages.getId(), convoId); channel.setImportantConversation(true); - mHelper.createNotificationChannel(PKG_O, UID_O, channel, true, false); + mHelper.createNotificationChannel(PKG_O, UID_O, channel, false, false); mHelper.permanentlyDeleteNotificationChannel(PKG_O, UID_O, "messages"); @@ -4935,7 +4937,7 @@ public class PreferencesHelperTest extends UiServiceTestCase { "conversation", IMPORTANCE_DEFAULT); friend.setConversationId(parent.getId(), "friend"); friend.setImportantConversation(true); - mHelper.createNotificationChannel(PKG_O, UID_O, friend, true, false); + mHelper.createNotificationChannel(PKG_O, UID_O, friend, false, false); ArrayList<StatsEvent> events = new ArrayList<>(); mHelper.pullPackageChannelPreferencesStats(events); |