summaryrefslogtreecommitdiffstats
path: root/app/src/main/java/app/fedilab/android/mastodon/jobs/NotificationsWorker.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/app/fedilab/android/mastodon/jobs/NotificationsWorker.java')
-rw-r--r--app/src/main/java/app/fedilab/android/mastodon/jobs/NotificationsWorker.java15
1 files changed, 13 insertions, 2 deletions
diff --git a/app/src/main/java/app/fedilab/android/mastodon/jobs/NotificationsWorker.java b/app/src/main/java/app/fedilab/android/mastodon/jobs/NotificationsWorker.java
index f708c4391..7b828eb6a 100644
--- a/app/src/main/java/app/fedilab/android/mastodon/jobs/NotificationsWorker.java
+++ b/app/src/main/java/app/fedilab/android/mastodon/jobs/NotificationsWorker.java
@@ -18,6 +18,7 @@ import android.app.Notification;
import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.content.Context;
+import android.content.pm.ServiceInfo;
import android.graphics.BitmapFactory;
import android.os.Build;
@@ -74,7 +75,12 @@ public class NotificationsWorker extends Worker {
.setContentText(getApplicationContext().getString(R.string.fetch_notifications))
.setDefaults(NotificationCompat.DEFAULT_ALL)
.setPriority(Notification.PRIORITY_DEFAULT);
- return Futures.immediateFuture(new ForegroundInfo(FETCH_NOTIFICATION_CHANNEL_ID, notificationBuilder.build()));
+
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
+ return Futures.immediateFuture(new ForegroundInfo(FETCH_NOTIFICATION_CHANNEL_ID, notificationBuilder.build(), ServiceInfo.FOREGROUND_SERVICE_TYPE_DATA_SYNC));
+ } else {
+ return Futures.immediateFuture(new ForegroundInfo(FETCH_NOTIFICATION_CHANNEL_ID, notificationBuilder.build()));
+ }
}
@NonNull
@@ -97,7 +103,12 @@ public class NotificationsWorker extends Worker {
.setDefaults(NotificationCompat.DEFAULT_ALL)
.setSilent(true)
.setPriority(Notification.PRIORITY_LOW);
- return new ForegroundInfo(FETCH_NOTIFICATION_CHANNEL_ID, notificationBuilder.build());
+
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
+ return new ForegroundInfo(FETCH_NOTIFICATION_CHANNEL_ID, notificationBuilder.build(), ServiceInfo.FOREGROUND_SERVICE_TYPE_DATA_SYNC);
+ } else {
+ return new ForegroundInfo(FETCH_NOTIFICATION_CHANNEL_ID, notificationBuilder.build());
+ }
}
@NonNull