Fixed polling without schedule

pull/172/head
M66B 6 years ago
parent 9306d4e1e9
commit 9d3eb2d270

@ -148,7 +148,6 @@ public class FragmentOptionsSynchronize extends FragmentBase implements SharedPr
@Override @Override
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) { public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
prefs.edit().putBoolean("schedule", checked).apply(); prefs.edit().putBoolean("schedule", checked).apply();
if (checked)
ServiceSynchronize.reschedule(getContext()); ServiceSynchronize.reschedule(getContext());
} }
}); });

@ -1548,13 +1548,14 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
am.cancel(pi); am.cancel(pi);
boolean enabled;
long[] schedule = getSchedule(context); long[] schedule = getSchedule(context);
if (schedule == null) if (schedule == null)
return; enabled = true;
else {
long now = new Date().getTime(); long now = new Date().getTime();
long next = (now < schedule[0] ? schedule[0] : schedule[1]); long next = (now < schedule[0] ? schedule[0] : schedule[1]);
boolean enabled = (now >= schedule[0] && now < schedule[1]); enabled = (now >= schedule[0] && now < schedule[1]);
Log.i("Schedule now=" + new Date(now)); Log.i("Schedule now=" + new Date(now));
Log.i("Schedule start=" + new Date(schedule[0])); Log.i("Schedule start=" + new Date(schedule[0]));
@ -1563,6 +1564,7 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
Log.i("Schedule enabled=" + enabled); Log.i("Schedule enabled=" + enabled);
AlarmManagerCompat.setAndAllowWhileIdle(am, AlarmManager.RTC_WAKEUP, next, pi); AlarmManagerCompat.setAndAllowWhileIdle(am, AlarmManager.RTC_WAKEUP, next, pi);
}
WorkerPoll.init(context, enabled); WorkerPoll.init(context, enabled);
} }

Loading…
Cancel
Save