From 954c8db22592a09439e7b78f5d5dc7ddfeb3d413 Mon Sep 17 00:00:00 2001 From: M66B Date: Tue, 30 Jul 2019 08:46:38 +0200 Subject: [PATCH] Start foreground on create Sometimes there is a significant delay between on create and on start command --- app/src/main/java/eu/faircode/email/ServiceExternal.java | 8 ++++++-- app/src/main/java/eu/faircode/email/ServiceSend.java | 4 +--- .../main/java/eu/faircode/email/ServiceSynchronize.java | 3 +-- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/ServiceExternal.java b/app/src/main/java/eu/faircode/email/ServiceExternal.java index 39329b69a0..85d75c5dc4 100644 --- a/app/src/main/java/eu/faircode/email/ServiceExternal.java +++ b/app/src/main/java/eu/faircode/email/ServiceExternal.java @@ -36,11 +36,15 @@ public class ServiceExternal extends Service { // adb shell am startservice -a eu.faircode.email.DISABLE + @Override + public void onCreate() { + super.onCreate(); + startForeground(Helper.NOTIFICATION_EXTERNAL, getNotification().build()); + } + @Override public int onStartCommand(Intent intent, int flags, int startId) { try { - startForeground(Helper.NOTIFICATION_EXTERNAL, getNotification().build()); - Log.i("Received intent=" + intent); Log.logExtras(intent); diff --git a/app/src/main/java/eu/faircode/email/ServiceSend.java b/app/src/main/java/eu/faircode/email/ServiceSend.java index 2df74cd48b..ca0a992440 100644 --- a/app/src/main/java/eu/faircode/email/ServiceSend.java +++ b/app/src/main/java/eu/faircode/email/ServiceSend.java @@ -72,6 +72,7 @@ public class ServiceSend extends ServiceBase { public void onCreate() { Log.i("Service send create"); super.onCreate(); + startForeground(Helper.NOTIFICATION_SEND, getNotificationService(null, null).build()); cowner = new TwoStateOwner(ServiceSend.this, "send"); final DB db = DB.getInstance(this); @@ -223,10 +224,7 @@ public class ServiceSend extends ServiceBase { @Override public int onStartCommand(Intent intent, int flags, int startId) { - startForeground(Helper.NOTIFICATION_SEND, getNotificationService(null, null).build()); - super.onStartCommand(intent, flags, startId); - return START_STICKY; } diff --git a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java index 7cb1eff358..5cea5cade7 100644 --- a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java +++ b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java @@ -119,6 +119,7 @@ public class ServiceSynchronize extends ServiceBase { public void onCreate() { Log.i("Service create version=" + BuildConfig.VERSION_NAME); super.onCreate(); + startForeground(Helper.NOTIFICATION_SYNCHRONIZE, getNotificationService(null).build()); // Listen for network changes ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); @@ -251,8 +252,6 @@ public class ServiceSynchronize extends ServiceBase { Log.i("Service command intent=" + intent + " action=" + action); Log.logExtras(intent); - startForeground(Helper.NOTIFICATION_SYNCHRONIZE, getNotificationService(null).build()); - super.onStartCommand(intent, flags, startId); if (action != null)