我在我的應用程序中使用服務。它是一個啓動程序。我在我的服務中使用了定時器,池中頻率爲1分鐘。我的應用程序在正常情況下工作正常。但是當我重新啓動我的電話從我的計時器運行一分鐘兩次,例如:定時器在我的服務中運行兩次
11:00:15,11:00:23,11:01:15,11:01:23,11:02 :15,11時02分23秒.......
請幫我人在這裏是我的服務代碼:
if (mTimer != null) {
mTimer.cancel();
mTimer = new Timer();
// mTimer.schedule(new TimeDisplayTimerTask(), file_saving_time, file_saving_time);
mTimer.schedule(new TimeDisplayTimerTask(), file_saving_time, file_saving_time);
} else {
// recreate new
mTimer = new Timer();
mTimer.schedule(new TimeDisplayTimerTask(), file_saving_time, file_saving_time);
}
我開始從活動類的onCreate(),我的服務和摧毀它來自onDestroy()方法。
是否有這個if語句運行兩次任何機會,所以取消了嗎? – x13
你有沒有試過mTimer.purge(); ? –
@ThisNameBetterBeAvailable否 –