每小时在特定毫秒执行一次任务Android



对于我的应用程序,我需要每小时执行一项任务,但要在特定的时间执行。服务器返回给我的毫秒数,例如:100ms,所以我需要在执行任务

  • 00:00:00.100
  • 01:00:00.100
  • 02:00:00.100等

例如,如果数字是3500,我需要在以下位置执行任务:

  • 00:00:03.500
  • 01:00:03.500
  • 02:00:03.500等

我知道如何每隔1小时间隔运行一次任务,但不知道如何在特定时间执行。如果有人有解决方案:(

如果你真的需要精确的ms(我真的,真的怀疑你是否需要(,那你就倒霉了。安卓系统不是一个实时操作系统,因为Linux不是一个即时操作系统,也没有做出这些保证。如果你只需要非常接近时间(比如精确到秒(,即使在低功耗模式下,AlarmManager.setExactAndAllowWhileIdle也会被调用。然而,这并没有重复的版本,所以如果需要,您需要自己实现。AlarmManager不会在重新启动时保持警报,所以如果你需要它,你必须这样做。最后,你有大约10秒的时间来执行你需要的任何事情,或者采取适当的措施,比如唤醒锁来做更多的事情。

这也需要计划精确的警报权限。在上阅读文档https://developer.android.com/reference/android/app/AlarmManager#setExactAndAllowWhileIdle(int,%20long,%20android.app.PendingIntent(

最新更新