Preserve notification stats on update
Change-Id: I519b31e83c32ac00e7c5838abbc5e3127430106b
This commit is contained in:
@@ -444,7 +444,7 @@ public class NotificationManagerService extends SystemService {
|
||||
public static final class NotificationRecord
|
||||
{
|
||||
final StatusBarNotification sbn;
|
||||
final SingleNotificationStats stats = new SingleNotificationStats();
|
||||
SingleNotificationStats stats;
|
||||
IBinder statusBarKey;
|
||||
|
||||
NotificationRecord(StatusBarNotification sbn)
|
||||
@@ -1638,7 +1638,7 @@ public class NotificationManagerService extends SystemService {
|
||||
} else {
|
||||
old = mNotificationList.get(index);
|
||||
mNotificationList.set(index, r);
|
||||
mUsageStats.registerUpdatedByApp(r);
|
||||
mUsageStats.registerUpdatedByApp(r, old);
|
||||
// Make sure we don't lose the foreground service state.
|
||||
if (old != null) {
|
||||
notification.flags |=
|
||||
|
||||
@@ -58,6 +58,7 @@ public class NotificationUsageStats {
|
||||
* Called when a notification has been posted.
|
||||
*/
|
||||
public synchronized void registerPostedByApp(NotificationRecord notification) {
|
||||
notification.stats = new SingleNotificationStats();
|
||||
notification.stats.posttimeElapsedMs = SystemClock.elapsedRealtime();
|
||||
for (AggregatedStats stats : getAggregatedStatsLocked(notification)) {
|
||||
stats.numPostedByApp++;
|
||||
@@ -68,7 +69,8 @@ public class NotificationUsageStats {
|
||||
/**
|
||||
* Called when a notification has been updated.
|
||||
*/
|
||||
public void registerUpdatedByApp(NotificationRecord notification) {
|
||||
public void registerUpdatedByApp(NotificationRecord notification, NotificationRecord old) {
|
||||
notification.stats = old.stats;
|
||||
for (AggregatedStats stats : getAggregatedStatsLocked(notification)) {
|
||||
stats.numUpdatedByApp++;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user