我又踩坑了。
打算实现计算现在已经学习的时间的需求,结果发现数据库中存的数据根本就不是本该存进去的时间。
后来我发现在该次专注,由于学习时长已达到,而进行时长更新时,会不断进行数据库更新的操作,就算是已经返回了上一级页面。因为之前进行时间更新的线程一直没有被销毁。
之后在handleMessage中,finish之前把该线程销毁就可以了。
taskDao.updateTime(user_id,task_name,task_time);
handler.removeCallbacks(update_thread);
ClockActivity.this.finish();