其他分享
首页 > 其他分享> > android-设置重复任务的最佳方法

android-设置重复任务的最佳方法

作者:互联网

我在我的应用程序中有一种方法,我想根据用户的选择反复调用它.例如,如果用户选择了每小时,该活动将触发一个每小时被调用的方法.我想知道安排这项重复任务的最佳方法.

我一直在尝试使用Timers和Timer任务,但是由于某些原因,当我将其与Java日历类一起使用时,它似乎不起作用:

    Calendar c1 = Calendar.getInstance();
          c1.add(Calendar.SECOND, 30);    
  updateTimer.scheduleAtFixedRate(cleanCompletedCache, c1.getTimeInMillis(),hour );

从我一直在阅读的内容来看,处理程序不适合执行此多次重复任务.我是否需要为此使用警报管理器,为什么上述代码无法正确执行?谢谢

解决方法:

您需要AlarmManager及其setRepeating或setInexactRepeating调用.

在那里,您计划将一个Intent交付给您的应用程序,并编写一个Intent接收器来处理它.这样,您的应用程序的激活完全由Android系统负责,并且您的应用程序无需在等待激活的整个小时内运行.

如果出于某种奇怪的原因,您需要在计时器调用之间运行代码,则需要保持后台服务运行,但是您仍然可以使用AlarmManager来唤醒.

标签:android-asynctask,android-alarms,android
来源: https://codeday.me/bug/20191209/2095798.html