我正在开发一个任务调度应用程序,让我想起某个时间的任务。我曾经用getSystemService(AlarmManager.class).set(RTC_WAKEUP, millis, pendingIntent);
来实现这一点。然后,IntentService
稍后开始并显示通知。
但是在Android Oreo中我的IntentService
根本就没有被调用。我注意到关于Background Execution Limits以及如何从AlarmManager
迁移到JobScheduler
的大量讨论,但没有人提到JobScheduler
如何根据RTC开始工作。
我的IntentService
除了显示通知之外的其他功能只不过是将任务设置为“已通知”或“已完成”,我认为这与通过网络同步大量数据等繁重任务无法比拟JobScheduler
被引入了。
Android Oreo实施基于时间的通知的最佳做法是什么?
答案 0 :(得分:1)
我正在采取@ balu-sangem的解决方案:
PendingIntent.getService()
替换为
PendingIntent.getBroadcast()
IntentService
替换为BroadcastReceiver