summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Beverly <beverlyt@google.com> 2018-11-02 16:25:49 -0400
committer Beverly Tai <beverlyt@google.com> 2018-11-02 20:38:04 +0000
commitaa1231fbe94de5fd80b3a6bcc25713917da9bd10 (patch)
treec3ba1fd84a64e8d099458fde049103a64e63d16f
parentc8c634f3d667fbfea8adf21bc40dfc5e1073b8ab (diff)
Put notification demotion behind flag
Put notification categorizer and aging importance demotions behind a flag Test: n/a Change-Id: I431fcde73881a0161de16eda1e7ba1eec3283b6a Fixes: 118842437
-rw-r--r--packages/ExtServices/src/android/ext/services/notification/Assistant.java44
1 files changed, 27 insertions, 17 deletions
diff --git a/packages/ExtServices/src/android/ext/services/notification/Assistant.java b/packages/ExtServices/src/android/ext/services/notification/Assistant.java
index 8f33a7016b39..ddc00e37b8dc 100644
--- a/packages/ExtServices/src/android/ext/services/notification/Assistant.java
+++ b/packages/ExtServices/src/android/ext/services/notification/Assistant.java
@@ -38,6 +38,7 @@ import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Environment;
import android.os.Handler;
+import android.os.SystemProperties;
import android.os.UserHandle;
import android.os.storage.StorageManager;
import android.provider.Settings;
@@ -77,6 +78,10 @@ import java.util.Map;
public class Assistant extends NotificationAssistantService {
private static final String TAG = "ExtAssistant";
private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
+ public static final boolean AUTO_DEMOTE_NOTIFICATIONS = SystemProperties.getBoolean(
+ "debug.demote_notifs", false);
+ public static final boolean AGE_NOTIFICATIONS = SystemProperties.getBoolean(
+ "debug.age_notifs", false);
private static final String TAG_ASSISTANT = "assistant";
private static final String TAG_IMPRESSION = "impression-set";
@@ -230,16 +235,19 @@ public class Assistant extends NotificationAssistantService {
@NonNull ArrayList<Notification.Action> smartActions,
@NonNull ArrayList<CharSequence> smartReplies) {
Bundle signals = new Bundle();
- if (!smartActions.isEmpty()) {
- signals.putParcelableArrayList(Adjustment.KEY_SMART_ACTIONS, smartActions);
- }
- if (!smartReplies.isEmpty()) {
- signals.putCharSequenceArrayList(Adjustment.KEY_SMART_REPLIES, smartReplies);
- }
- if (mNotificationCategorizer.shouldSilence(entry)) {
- final int importance = entry.getImportance() < IMPORTANCE_LOW ? entry.getImportance()
- : IMPORTANCE_LOW;
- signals.putInt(KEY_IMPORTANCE, importance);
+
+ if (AUTO_DEMOTE_NOTIFICATIONS) {
+ if (!smartActions.isEmpty()) {
+ signals.putParcelableArrayList(Adjustment.KEY_SMART_ACTIONS, smartActions);
+ }
+ if (!smartReplies.isEmpty()) {
+ signals.putCharSequenceArrayList(Adjustment.KEY_SMART_REPLIES, smartReplies);
+ }
+ if (mNotificationCategorizer.shouldSilence(entry)) {
+ final int importance = entry.getImportance() < IMPORTANCE_LOW
+ ? entry.getImportance() : IMPORTANCE_LOW;
+ signals.putInt(KEY_IMPORTANCE, importance);
+ }
}
return new Adjustment(
@@ -445,13 +453,15 @@ public class Assistant extends NotificationAssistantService {
protected final class AgingCallback implements Callback {
@Override
public void sendAdjustment(String key, int newImportance) {
- NotificationEntry entry = mLiveNotifications.get(key);
- if (entry != null) {
- Bundle bundle = new Bundle();
- bundle.putInt(KEY_IMPORTANCE, newImportance);
- Adjustment adjustment = new Adjustment(entry.getSbn().getPackageName(), key, bundle,
- "aging", entry.getSbn().getUserId());
- adjustNotification(adjustment);
+ if (AGE_NOTIFICATIONS) {
+ NotificationEntry entry = mLiveNotifications.get(key);
+ if (entry != null) {
+ Bundle bundle = new Bundle();
+ bundle.putInt(KEY_IMPORTANCE, newImportance);
+ Adjustment adjustment = new Adjustment(entry.getSbn().getPackageName(), key,
+ bundle, "aging", entry.getSbn().getUserId());
+ adjustNotification(adjustment);
+ }
}
}
}