I am making an Android app that has a time limit to the amount of points you can get. But if you close the app, the timer keeps going. How do I pause the CountDownTimer
when the app pauses?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
You can cancel it in onPause()
with something like
@Override
public void onPause()
{
super.onPause();
timer.cancel(); // timer is a reference to my inner CountDownTimer class
timer = null;
}
And use the millisUntilFinished
variable to save in a SharedPreference
or some other persistent variable. Then use that variable again to start the timer in onResume()
Shared Prefs
This answer may be helpful if you need to pass the value to another Activity
.