diff --git a/app/src/main/java/eu/faircode/email/ServiceSend.java b/app/src/main/java/eu/faircode/email/ServiceSend.java index e32780d191..4188e26885 100644 --- a/app/src/main/java/eu/faircode/email/ServiceSend.java +++ b/app/src/main/java/eu/faircode/email/ServiceSend.java @@ -71,6 +71,7 @@ public class ServiceSend extends ServiceBase implements SharedPreferences.OnShar private Network lastActive = null; private boolean lastSuitable = false; + private Handler handler; private PowerManager.WakeLock wlOutbox; private TwoStateOwner owner = new TwoStateOwner("send"); private List handling = new ArrayList<>(); @@ -86,6 +87,8 @@ public class ServiceSend extends ServiceBase implements SharedPreferences.OnShar super.onCreate(); startForeground(Helper.NOTIFICATION_SEND, getNotificationService().build()); + handler = new Handler(); + PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); wlOutbox = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, BuildConfig.APPLICATION_ID + ":send"); @@ -281,7 +284,7 @@ public class ServiceSend extends ServiceBase implements SharedPreferences.OnShar if (Looper.myLooper() == Looper.getMainLooper()) _checkConnectivity(); else - new Handler(Looper.getMainLooper()).post(new Runnable() { + handler.post(new Runnable() { @Override public void run() { _checkConnectivity();