我正在开发一个任务安排应用程序,它可以在特定时间提醒我某项任务。我曾经使用 getSystemService(AlarmManager.class).set(RTC_WAKEUP, millis, pendingIntent);
来实现它。然后 IntentService
稍后启动并显示通知。
但在 Android Oreo 中,我的 IntentService
根本没有被调用。我注意到关于 Background Execution Limits 的大量讨论以及如何从 AlarmManager
迁移到 JobScheduler
,但没有人提到 JobScheduler
如何启动基于 RTC 的作业。
我的IntentService
除了显示通知外,无非是将任务设置为“已通知”或“已完成”,我认为这与同步大量数据这样的繁重任务无法比拟引入 JobScheduler
的网络。
在 Android Oreo 中实现基于时间的通知的最佳实践是什么?
最佳答案
我正在采用@balu-sangem 的解决方案:
- 将
PendingIntent.getService()
替换为PendingIntent.getBroadcast()
- 将
IntentService
替换为BroadcastReceiver
关于android - Oreo 中的基于时间的通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48356131/