From 4b0ca9038bab18aeec525de42a295345c0acfc0a Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Thu, 8 Nov 2018 21:53:50 +0100 Subject: start ExportLogsService correctly on devices >= OREO --- .../java/de/pixart/messenger/services/AlarmReceiver.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'src/main/java/de/pixart/messenger/services') diff --git a/src/main/java/de/pixart/messenger/services/AlarmReceiver.java b/src/main/java/de/pixart/messenger/services/AlarmReceiver.java index e20b567dd..e4c07366d 100644 --- a/src/main/java/de/pixart/messenger/services/AlarmReceiver.java +++ b/src/main/java/de/pixart/messenger/services/AlarmReceiver.java @@ -3,9 +3,11 @@ package de.pixart.messenger.services; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; +import android.support.v4.content.ContextCompat; import android.util.Log; import de.pixart.messenger.Config; +import de.pixart.messenger.utils.Compatibility; public class AlarmReceiver extends BroadcastReceiver { public static final int SCHEDULE_ALARM_REQUEST_CODE = 523976483; @@ -14,8 +16,15 @@ public class AlarmReceiver extends BroadcastReceiver { public void onReceive(Context context, Intent intent) { if (intent.getAction().contains("exportlogs")) { Log.d(Config.LOGTAG, "Received alarm broadcast to export logs"); - Intent i = new Intent(context, ExportLogsService.class); - context.startService(i); + try { + if (Compatibility.runsAndTargetsTwentySix(context)) { + ContextCompat.startForegroundService(context, new Intent(context, ExportLogsService.class)); + } else { + context.startService(new Intent(context, ExportLogsService.class)); + } + } catch (RuntimeException e) { + Log.d(Config.LOGTAG, "AlarmReceiver was unable to start ExportLogsService"); + } } } } -- cgit v1.2.3