Increase the importance of noisy notifications.

For apps with a targetSdkVersion < N.

Bug: 27213267
Change-Id: I4c589d149a28357dbbd26344e7fadb59d8b50672
This commit is contained in:
Julia Reynolds
2016-02-17 09:10:19 -05:00
parent 1998ee5628
commit 83fa1073f5

View File

@@ -23,11 +23,13 @@ import static android.service.notification.NotificationListenerService.Ranking.I
import android.app.Notification;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager.NameNotFoundException;
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.drawable.Icon;
import android.media.AudioAttributes;
import android.os.Build;
import android.os.UserHandle;
import android.service.notification.NotificationListenerService;
import android.service.notification.StatusBarNotification;
@@ -146,6 +148,22 @@ public final class NotificationRecord {
importance = IMPORTANCE_DEFAULT;
}
try {
final ApplicationInfo applicationInfo = mContext.getPackageManager().getApplicationInfo(
sbn.getPackageName(), 0);
if (applicationInfo.targetSdkVersion < Build.VERSION_CODES.N) {
if (isNoisy) {
if (importance >= IMPORTANCE_HIGH) {
importance = IMPORTANCE_MAX;
} else {
importance = IMPORTANCE_HIGH;
}
}
}
} catch (NameNotFoundException e) {
// oh well.
}
if (n.fullScreenIntent != null) {
importance = IMPORTANCE_MAX;
}