From 699dbe2e2a56ac36160950c1ac06b16f59eab6c1 Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Tue, 9 May 2017 20:43:54 +0200 Subject: avoid race condition that lead to double notification sound --- src/main/java/de/pixart/messenger/services/NotificationService.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/main/java/de/pixart/messenger') diff --git a/src/main/java/de/pixart/messenger/services/NotificationService.java b/src/main/java/de/pixart/messenger/services/NotificationService.java index e6c3fb052..56f0427c0 100644 --- a/src/main/java/de/pixart/messenger/services/NotificationService.java +++ b/src/main/java/de/pixart/messenger/services/NotificationService.java @@ -243,6 +243,7 @@ public class NotificationService { } public void updateNotification(final boolean notify) { + Log.d(Config.LOGTAG, "updateNotification(" + Boolean.toString(notify) + ")"); final NotificationManagerCompat notificationManager = NotificationManagerCompat.from(mXmppConnectionService); final SharedPreferences preferences = mXmppConnectionService.getPreferences(); @@ -261,13 +262,14 @@ public class NotificationService { } else { Log.d(Config.LOGTAG, "Notification: Received multiple notification or using Android N"); mBuilder = buildMultipleConversation(); - notificationManager.notify(NOTIFICATION_ID, mBuilder.build()); + modifyForSoundVibrationAndLight(mBuilder, notify, preferences); for (Map.Entry> entry : notifications.entrySet()) { Builder singleBuilder = buildSingleConversations(entry.getValue()); singleBuilder.setGroup(CONVERSATIONS_GROUP); modifyForSoundVibrationAndLight(singleBuilder, notify, preferences); notificationManager.notify(entry.getKey(), NOTIFICATION_ID, singleBuilder.build()); } + notificationManager.notify(NOTIFICATION_ID, mBuilder.build()); } } } -- cgit v1.2.3