diff options
Diffstat (limited to 'src/main/java/de/pixart/messenger/services')
4 files changed, 10 insertions, 22 deletions
diff --git a/src/main/java/de/pixart/messenger/services/AlarmReceiver.java b/src/main/java/de/pixart/messenger/services/AlarmReceiver.java index e4c07366d..eb38da8b3 100644 --- a/src/main/java/de/pixart/messenger/services/AlarmReceiver.java +++ b/src/main/java/de/pixart/messenger/services/AlarmReceiver.java @@ -3,7 +3,6 @@ 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; @@ -16,15 +15,7 @@ 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"); - 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"); - } + Compatibility.startService(context, new Intent(context, ExportLogsService.class)); } } } diff --git a/src/main/java/de/pixart/messenger/services/ContactChooserTargetService.java b/src/main/java/de/pixart/messenger/services/ContactChooserTargetService.java index 006b6e918..7bda592e5 100644 --- a/src/main/java/de/pixart/messenger/services/ContactChooserTargetService.java +++ b/src/main/java/de/pixart/messenger/services/ContactChooserTargetService.java @@ -18,6 +18,7 @@ import java.util.List; import de.pixart.messenger.entities.Conversation; import de.pixart.messenger.ui.ConversationsActivity; +import de.pixart.messenger.utils.Compatibility; @TargetApi(Build.VERSION_CODES.M) public class ContactChooserTargetService extends ChooserTargetService implements ServiceConnection { @@ -37,10 +38,14 @@ public class ContactChooserTargetService extends ChooserTargetService implements @Override public List<ChooserTarget> onGetChooserTargets(ComponentName targetActivityName, IntentFilter matchedFilter) { - Intent intent = new Intent(this, XmppConnectionService.class); + final ArrayList<ChooserTarget> chooserTargets = new ArrayList<>(); + if (!EventReceiver.hasEnabledAccounts(this)) { + return chooserTargets; + } + final Intent intent = new Intent(this, XmppConnectionService.class); intent.setAction("contact_chooser"); + Compatibility.startService(this, intent); bindService(intent, this, Context.BIND_AUTO_CREATE); - ArrayList<ChooserTarget> chooserTargets = new ArrayList<>(); try { waitForService(); final ArrayList<Conversation> conversations = new ArrayList<>(); diff --git a/src/main/java/de/pixart/messenger/services/EventReceiver.java b/src/main/java/de/pixart/messenger/services/EventReceiver.java index 03bf68ed9..8b3a6b415 100644 --- a/src/main/java/de/pixart/messenger/services/EventReceiver.java +++ b/src/main/java/de/pixart/messenger/services/EventReceiver.java @@ -25,16 +25,7 @@ public class EventReceiver extends BroadcastReceiver { } final String action = originalIntent.getAction(); if (action.equals("ui") || hasEnabledAccounts(context)) { - try { - if (Compatibility.runsAndTargetsTwentySix(context)) { - intentForService.putExtra(EXTRA_NEEDS_FOREGROUND_SERVICE, true); - ContextCompat.startForegroundService(context, intentForService); - } else { - context.startService(intentForService); - } - } catch (RuntimeException e) { - Log.d(Config.LOGTAG, "EventReceiver was unable to start service"); - } + Compatibility.startService(context, intentForService); } else { Log.d(Config.LOGTAG, "EventReceiver ignored action " + intentForService.getAction()); } diff --git a/src/main/java/de/pixart/messenger/services/XmppConnectionService.java b/src/main/java/de/pixart/messenger/services/XmppConnectionService.java index c332bfae4..a30578a67 100644 --- a/src/main/java/de/pixart/messenger/services/XmppConnectionService.java +++ b/src/main/java/de/pixart/messenger/services/XmppConnectionService.java @@ -1256,6 +1256,7 @@ public class XmppConnectionService extends Service { } catch (IllegalArgumentException e) { //ignored } + destroyed = false; fileObserver.stopWatching(); super.onDestroy(); // cancel scheduled exporter |