diff --git a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java index 0d4663f400..fd8fc680c4 100644 --- a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java +++ b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java @@ -1401,7 +1401,12 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences } else { Log.e(ex); try { - state.setBackoff(2 * CONNECT_BACKOFF_ALARM_MAX * 60); + int backoff = state.getBackoff(); + if (backoff < 2 * CONNECT_BACKOFF_ALARM_MAX * 60) + backoff = 2 * CONNECT_BACKOFF_ALARM_MAX * 60; + else if (backoff < 8 * CONNECT_BACKOFF_ALARM_MAX * 60) + backoff *= 2; + state.setBackoff(backoff); NotificationManager nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); nm.notify("receive:" + account.id, NotificationHelper.NOTIFICATION_TAGGED,