Получение уведомления после таймера обратного отсчета в Android Studio - PullRequest
0 голосов
/ 02 декабря 2018

Я создаю приложение в Android Studio для таймера обратного отсчета от 40 минут, я хочу получить уведомление по истечении времени, проблема в том, где я должен поместить коды для уведомления, чтобы оно появлялось после завершения обратного отсчета,это то, что я пытаюсь, и это конфликтует после обратного отсчета public void startTimer () {

    CountDownTimer cdt= new CountDownTimer(60000, 1000) {
        @Override
        public void onTick(long millisUntilFinished) {
            timeLeft = millisUntilFinished;
            updateTimer();
        }

        @Override
        public void onFinish() {
            NewMessageNotification sms = new NewMessageNotification();
            sms.notify();

        }
    };
    cdt.start();
    startBtn.setText("PAUSE");
    timeRunning = true;
}

1 Ответ

0 голосов
/ 02 декабря 2018

Класс CountDownTimer имеет два обратных вызова: onTick(long millisUntilFinished) и onFinish().Первое срабатывает с регулярными интервалами, а второе срабатывает, когда время истекло.

Так что, если вы хотите, чтобы уведомление показывалось, когда время истекло, ваш код должен быть добавлен внутри onFinish() именно там, гдеВы переопределяете это.

Пример:

CountDownTimer cdt = new CountDownTimer(30000, 1000) {

     @override
     public void onTick(long millisUntilFinished) {
         //code for regular intervals or nothing 
     }

     @override
     public void onFinish() {
         //your code for notification
     }
  };

  cdt.start();

И это сделано

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...