CountDownTimer перестает работать до окончания таймера, когда приложение закрыто - PullRequest
0 голосов
/ 18 декабря 2018

Я поместил CountDownTimer для изменения предпочтения через 6 часов после закрытия приложения, но в какой-то момент таймер перестает работать, но если я установлю таймер, скажем, на 10 секунд, предпочтение действительно изменится.Любая идея, что может заставить CountDownTimer перестать работать где-то в течение 6 часов?Вот мой код.

public class TimeService extends Service {

CountDownTimer cdt = null;
SharedPreferences pref;
Intent timeService;

@Override
public void onCreate() {
    timeService = new Intent(this, TimeService.class);
    startService(timeService);
    pref = this.getSharedPreferences("log", MODE_PRIVATE);
    pref = this.getSharedPreferences("url", MODE_PRIVATE);
    cdt = new CountDownTimer(21600000, 1000) {

        @Override
        public void onTick(long millisUntilFinished) {

        }

        @Override
        public void onFinish() {
            savePreferences("url", WebPages.page);
            savePreferences("log", "false");
        }
    };
    cdt.start();
}

@Nullable
@Override
public IBinder onBind(Intent intent) {
    return null;
}

private void savePreferences(String key, String value) {
    SharedPreferences sharedPreferences = getSharedPreferences("log", MODE_PRIVATE);
    SharedPreferences.Editor editor = sharedPreferences.edit();
    editor.putString(key, value);
    editor.apply();
}

}

Я постараюсь ответить на любой вопрос.

...