From a25d17ff107f718d98c32c24fde92ca88c846395 Mon Sep 17 00:00:00 2001 From: Eugene Susla Date: Thu, 24 Aug 2017 11:28:08 -0700 Subject: [PATCH] Avoid running hasCompanionDevices on main thread Fixes: 63348899, 63309685 Test: Ensure b/63348899 doesn't reproduce Change-Id: I93717bf7c3fab2ca32ec7cedf1cbd64fe1b6bbf2 --- .../NotificationManagerService.java | 23 ++++++++----------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/services/core/java/com/android/server/notification/NotificationManagerService.java b/services/core/java/com/android/server/notification/NotificationManagerService.java index f60d92340492a..6fab6ba3e6448 100644 --- a/services/core/java/com/android/server/notification/NotificationManagerService.java +++ b/services/core/java/com/android/server/notification/NotificationManagerService.java @@ -158,6 +158,7 @@ import com.android.internal.annotations.VisibleForTesting; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.nano.MetricsProto; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; +import com.android.internal.os.BackgroundThread; import com.android.internal.statusbar.NotificationVisibility; import com.android.internal.util.ArrayUtils; import com.android.internal.util.DumpUtils; @@ -5571,13 +5572,10 @@ public class NotificationManagerService extends SystemService { continue; } - mHandler.post(new Runnable() { - @Override - public void run() { - if (hasCompanionDevice(serviceInfo)) { - notifyNotificationChannelChanged( - serviceInfo, pkg, user, channel, modificationType); - } + BackgroundThread.getHandler().post(() -> { + if (hasCompanionDevice(serviceInfo)) { + notifyNotificationChannelChanged( + serviceInfo, pkg, user, channel, modificationType); } }); } @@ -5594,13 +5592,10 @@ public class NotificationManagerService extends SystemService { continue; } - mHandler.post(new Runnable() { - @Override - public void run() { - if (hasCompanionDevice(serviceInfo)) { - notifyNotificationChannelGroupChanged( - serviceInfo, pkg, user, group, modificationType); - } + BackgroundThread.getHandler().post(() -> { + if (hasCompanionDevice(serviceInfo)) { + notifyNotificationChannelGroupChanged( + serviceInfo, pkg, user, group, modificationType); } }); }