Próbuję wysłać sms w serwisie. Jeśli SMS nie zostanie wysłany oznacza to, że ponownie uruchomię usługę po pewnym czasie, dla tego I Używanie timera. Jeśli wysłany SMS oznacza, że chcę zatrzymać zegar, do zatrzymania timera używam timer.cancel(); przed tym muszę sprawdzić, czy timer działa, czy nie. Jak to sprawdzić?Jak sprawdzić, czy zegar wciąż działa, czy nie?
int resultCode = getResultCode();
switch (resultCode)
{
case Activity.RESULT_OK:
timer.cancel();//Here I want to check timer running or not
break;
case SmsManager.RESULT_ERROR_GENERIC_FAILURE:
timer_run();
break;
case SmsManager.RESULT_ERROR_NO_SERVICE:
timer_run();
break;
case SmsManager.RESULT_ERROR_NULL_PDU:
timer_run();
break;
case SmsManager.RESULT_ERROR_RADIO_OFF:
timer_run();
break;
}
funkcja Harmonogram czasowy
public void timer_run(){
TimerTask hourlyTask = new TimerTask() {
@Override
public void run() {
Intent myIntent = new Intent(Myservice.this,Myservice.class);
startService(myIntent);
}
};
timer.schedule (hourlyTask, 0l, 500*5*5);
}