Androidで使用しているTimerは一度キャンセルしてしまうと再利用できない。
まあ、常識かもしれないけど。
#NGなコード
Timer mTimer = new Timer(true);
mTimer.schedule(checkTimetask, checkInterval, checkInterval);
mTimer.cancel();
mtimer..schedule(checkTimetask, checkInterval, checkInterval); //→ここでException発生する
#直したコード
mTimer.cancel();
Timer mTimer = new Timer(true);//再度newしないと駄目。
mtimer..schedule(checkTimetask, checkInterval, checkInterval);