【发布时间】:2015-03-24 16:53:23
【问题描述】:
我的目标是在 android 应用程序中每 6 小时运行一次后台服务。 我从阅读中学到的是:我需要使用alarmManager,设置警报,使用广播接收器接收警报,然后在onReceive方法中启动我的服务。
现在,我不想在某个特定时间设置闹钟,因为这样所有应用程序都会同时向服务器发送请求。我该如何解决?此外,我阅读的大多数教程都在 Activity 的 onCreate 中注册了警报。每次我启动应用程序时,这不会导致多次注册警报吗?有什么更好的地方来做这件事。
【问题讨论】:
-
AFAIK,
PendingIntent是安排某事的最佳方式。如果要避免同时向服务器发送请求,如何随机生成一个开始时间种子?然后,您可以根据此种子每 6 小时安排一次任务。 -
生成开始时间种子看起来是个好主意。谢谢!
标签: android android-service alarmmanager android-alarms