【发布时间】:2011-12-30 12:19:15
【问题描述】:
我需要定期从服务器获取新闻/事件更新,例如在我的 Android 应用中每 20 分钟一次。 AFAIK 意图服务和广播接收器组合将比使用服务更好,因为我不会与正在运行的服务进行通信。为了定期获取事件,我知道 2 个选项
1) 使用 Timer Task ScheduleAtFixedRate,我将启动 IntentService,它会获取一次事件并在有更新时广播并自行销毁。在给定时间间隔后,IntentService 将再次被 TimerTask 触发
2) 只需在应用程序启动时启动 Intent 服务并在 Intent 服务的 onHandleIntent 方法中启动 TimerTask ScheduleAtFixedRate。如果这是首选方式,我如何以及何时取消 Timer Task 以及 Intent 服务何时将被销毁。
或者我必须使用警报管理器。请注意,只要我使用该应用程序,我就需要这些更新,而且我需要每 20 到 30 分钟更新一次,而不是每 1 或 3 分钟一次。
任何机构请建议我,在此先感谢。
【问题讨论】:
-
vikinghammer.com/2012/04/22/… 这个链接解释了不同之处。
标签: android service alarmmanager timertask