我正在尝试使用GCMTaskManager来安排大约每30分钟运行一次的定期任务。当它运行时,它会进行更新"关于APP中的一些内部数据。
我初步运行了这个,并且可以使用LOG
中的OnRunTask
命令看到该任务根据需要激活。我让它运行(至少根据我填充的日志) OnRunTask
火灾。
我有两个问题我无法确定是否可以做到....
有没有办法看到剩下多少时间"离开"在下一个OnRunTask
火灾之前......或者......大约是什么"时间"它应该运行下一个?例如,如果PeriodTask有30分钟...且已经过了18分钟,我们能否以编程方式看到剩下的12分钟?
我有一个内部"按钮"手动触发APPS更新。如果用户点击这个,我想"重启"从那一点开始的PeriodicTask计时器。也就是说,如果假设30分钟OnRunTask
在大约12分钟内发射,并且用户手动点击UPDATE,我希望OnRunTask
现在从按下按钮开始重启30分钟。可以这样做吗?
由于
皮特
答案 0 :(得分:0)
对于1)GCMNetworkManager不提供用于跟踪已用/剩余时间的接口,但您可以通过维护存储数据的上次更新时间戳的变量来自行完成。
2)来自docs
更新Google Play服务或客户端应用后,系统会删除所有计划任务。 GcmNetworkManager调用客户端应用程序的onInitializeTasks()。重写此功能以重新安排必要的任务。