From 87232ef8a03f421b765fbb6717d2d578a4965fd9 Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Mon, 18 Feb 2019 20:58:45 +0100 Subject: after switching from forced foreground to foreground notification needs update --- .../de/pixart/messenger/services/XmppConnectionService.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'src/main/java/de/pixart/messenger/services/XmppConnectionService.java') diff --git a/src/main/java/de/pixart/messenger/services/XmppConnectionService.java b/src/main/java/de/pixart/messenger/services/XmppConnectionService.java index 3f9ac5f99..1735e455f 100644 --- a/src/main/java/de/pixart/messenger/services/XmppConnectionService.java +++ b/src/main/java/de/pixart/messenger/services/XmppConnectionService.java @@ -4,6 +4,7 @@ import android.Manifest; import android.annotation.SuppressLint; import android.annotation.TargetApi; import android.app.AlarmManager; +import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.app.Service; @@ -1301,13 +1302,19 @@ public class XmppConnectionService extends Service { private void toggleForegroundService(boolean force) { final boolean status; if (force || mForceForegroundService.get() || (Compatibility.keepForegroundService(this)/* && hasEnabledAccounts()*/)) { - startForeground(NotificationService.FOREGROUND_NOTIFICATION_ID, this.mNotificationService.createForegroundNotification()); + final Notification notification = this.mNotificationService.createForegroundNotification(); + startForeground(NotificationService.FOREGROUND_NOTIFICATION_ID, notification); + if (!mForceForegroundService.get()) { + mNotificationService.notify(NotificationService.FOREGROUND_NOTIFICATION_ID, notification); + } status = true; } else { stopForeground(true); status = false; } - mNotificationService.dismissForcedForegroundNotification(); //if the channel was changed the previous call might fail + if (!mForceForegroundService.get()) { + mNotificationService.dismissForcedForegroundNotification(); //if the channel was changed the previous call might fail + } Log.d(Config.LOGTAG, "ForegroundService: " + (status ? "on" : "off")); } -- cgit v1.2.3