android设备锁定时暂停TimerTask,解锁时恢复
我已将计时器设置如下android设备锁定时暂停TimerTask,解锁时恢复,android,timertask,Android,Timertask,我已将计时器设置如下 Timer t; TimerTask task; t = new Timer(); t.schedule(task, 10000); task = new TimerTask() { @Override public void run() { finish(); try { t.cancel(); t = null;
Timer t;
TimerTask task;
t = new Timer();
t.schedule(task, 10000);
task = new TimerTask() {
@Override
public void run() {
finish();
try {
t.cancel();
t = null;
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
};
现在一切都好了。我的问题始于android设备被锁定。当设备锁定时,计时器继续。我想在设备被锁定时暂停计时器,并在解锁时恢复
提前谢谢。请检查此项。如果您的设备已锁定/解锁,则会显示
KeyguardManager kgMgr = (KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE);
boolean showing = kgMgr.inKeyguardRestrictedInputMode();
使用倒计时器和
onTick()
检查此条件If
true停止计时器/保存计数else
继续。您可以尝试下面的代码
@Override
protected void onPause()
{
super.onPause();
// If the screen is off then the device has been locked
PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
boolean isScreenOn = powerManager.isScreenOn();
if (!isScreenOn) {
// The screen has been locked
// do stuff...
}
}
谢谢你的回答。它真的帮助了我。谢谢你的帮助和你使用倒计时的建议。