当前位置:   article > 正文

android 系统计时器,更改Android系统时钟会停止计时器.我该如何重新启动它们?...

android 改系统时钟 会死机

我认为有几种方法可以做到这一点.在任何一种情况下我都不会使用计时器.

您可以使用处理程序在postDelayed调用中运行任务.然后,您的任务必须从内部重新注册处理程序.

final int ONE_SECOND = 1000; // one second

final Handler handler = new Handler();

handler.postDelayed(new Runnable() {

public void run() {

... // do some stuff

if (expression) {

handler.postDelayed(this, ONE_SECOND);

}

}

}, ONE_SECOND);

这将使您的应用程序处于活动状态时运行任务.您还可以在Runnable中的postDelayed中调整延迟率.只要你制作另一个Looper,这种方式是半可预测的.根据任务的不同,使用主线程可能适合也可能不适合.

还有一个AlarmManager,您可以通过Context接口访问,该接口用于以更精确的间隔重复执行任务.它使用起来有点复杂,但您可以灵活地使用RTC和持久的可重复任务.

AlarmManager manager = mContext.getSystemService(Context.ALARM_SERVICE);

manager.setRepeating(AlarmManager.RTC,

,

,

pendingIntent);

例如,待定意图可以触发您可以在其他地方收听的广播意图.您可以在自定义Application对象的onCreate中创建此pendingintent,并取消onTerminate()中的intent.

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/240673
推荐阅读
相关标签
  

闽ICP备14008679号