我在服务中倒计时了。 当我停止服务时,倒数计时器是否还会计数?我的意思是即使服务已经停止,它的onFinished方法也会被调用吗?
答案 0 :(得分:2)
倒数计时器在不同的线程中运行,回调在UI线程上执行。因此,您需要在服务停止时手动取消计时器。你可以按照Hiren的回答。
答案 1 :(得分:0)
private CountDownTimer mCountDownTimer;
onCreate :
mCountDownTimer = new CountDownTimer(30000,1000) {
@Override
public void onTick(long millisUntilFinished) {
}
@Override
public void onFinish() {
// Your stuff
}
};
mCountDownTimer.start();
onDestroy :
@Override
protected void onDestroy() {
if(mCountDownTimer!=null){
mCountDownTimer.cancel();
}
super.onDestroy();
}
停止服务:
stopService(Your_Intent_For_Service);
完成强>
答案 2 :(得分:0)
是的,它会被调用。如果倒计时器不是静态内部类,那么你最终会泄漏服务