咱們的項目須要作一個語音識別過程當中,若是兩分鐘沒人說話,機器人就直接進入休眠狀態。在這個功能裏使用到了倒計時兩分鐘的功能,而後呢,並無用timer,timetask ,handle+massage 的方式。用的CountDownTimer類,這個類裏封裝就是handle處理的。這個類就特別簡單,方便了。ide
附上此方法代碼:meta
private void countTime(final String result) { /** 倒計時120秒,一次1秒 */ new CountDownTimer(120*1000, 1000) { @Override public void onTick(long millisUntilFinished) {//此if語句爲間隔回調方法,你們能夠換成本身須要的邏輯就行了。 if (!result.equals("")|| "" != result){ cancel(); } // TODO Auto-generated method stub } @Override public void onFinish() {//此if語句爲讓機器人進入休眠的邏輯代碼,你們能夠寫本身的邏輯在裏面,這個方法是指倒計時完成後的方法。 if (result.equals("")|| "" == result){ helper.onSleep(); isSleeped = true; mSynthesizer("我走了,有問題再叫我"); } } }.start();}