我的应用程序ActivityA和ActivityB中有2个活动和倒计时器.计时器应该在两个活动之间保持运行.如果用户单击主页或后退按钮,计时器将保存到数据库,然后将在应用程序重新启动时从最后一个状态继续.
我将保存到onPuse()和onBackPressed()中的数据库.如果用户点击主页和后退按钮,则保存数据.
我的问题是:如果从ActivityA调用ActivityB,则将调用save to database方法.除非按下主页按钮,否则如何避免被调用?
解决方法:
一旦创建了计时器,就将创建时间存储在数据库中,然后在每个活动中onResume只需从当前时间创建的时间重新加载计时器.像这个伪代码的东西
createTimer() {
createTimerEntryInDB();
showTimer();
}
showTimer() {
fetchTimerEntryFromDB();
populateTimerUI();
}
/* In both activity */
onResume() {
if (doesTimerExistInDB) {
showTimer();
}
}