Планирование таймера / оптимизация TimerTask (Kotlin) - PullRequest
0 голосов
/ 27 октября 2018

Пожалуйста, примите во внимание следующее:

var everySunday = Timer()
var timertask = object: TimerTask(){
    override fun run(){
         var day = Calendar.getInstance().get(Calendar.DAY_OF_WEEK)
         var time = SimpleDateFormat("HH:mm:ss", Locale.getDefault()).format(Date()
         var midnight = "00:00:00"
         if (day == Calendar.Sunday && time == midnight){
               Toast.makeText(this, "It's Sunday!", Toast.LENGTH_SHORT).show()
            }
         }
}

everySunday.scheduleAtFixedRate(timertask, 0, 60000)

По сути, функция EverySunday состоит в том, чтобы информировать меня о том, что сегодня воскресенье, а сейчас 12:00 в воскресенье.

Тем не менее, я хотел бы упростить код каждого воскресенья, добавив следующее:

var everySunday = Timer()
var timertask = object: TimerTask(){
    override fun run(){
         Toast.makeText(this, "It's Sunday!", Toast.LENGTH_SHORT).show()
    }
}

//val date = ??  <-- "Sunday 12:00 am" 
everySunday.schedule(timertask, date)

Проблема в том, что я хочу записать дату в качестве даты!Тип, который представляет воскресенье 12:00 утра, но я не уверен, как это сделать.Помощь будет высоко ценится.

...