我已经使用Android Job库进行计划作业,但是一旦Google在I / O 2018中宣布Workmanager库。我想将其用作替代方法,但是很遗憾,我无法使用它来安排特定时间的通知,例如-例如上午8:30的事件通知 这是我的经理要求代码
Data data = new Data.Builder()
.putString("EVENT_ID", event.id)
.putString("EVENT_TITLE", event.eventTitle)
.putString("START_TIME", event.startTime)
.build();
long delayToPass = getTriggerTime(triggerTime);
OneTimeWorkRequest compressionWork = new OneTimeWorkRequest.Builder(EventWorker.class)
.setInputData(data)
.setPeriodStartTime(delayToPass, TimeUnit.MILLISECONDS )
.build();
WorkManager.getInstance().enqueue(compressionWork);
我的代码从数据库中读取触发时间..当事件通过Workmanager库发生时,我想在数据库中的触发时间运行通知
答案 0 :(得分:1)
WorkManager
不适用于该方案。您将必须使用AlarmManager
。
答案 1 :(得分:0)
谢谢,但是我已经使用Evernote Android Job库实现了这种情况。但我在他们的github自述文件中读了下一个报价
WorkManager是Google的新架构组件,它试图解决该库试图解决的非常相似的问题:对于所有Android版本,仅一次实施后台作业。该API与该库非常相似,但是提供了更多功能,例如链接工作项,并且运行自己的执行程序。 如果开始新项目,则应使用WorkManager而不是此库。您还应该开始将代码从该库迁移到WorkManager。在将来的某个时候,该库将被弃用。 从版本1.3.0开始,该库将在内部使用WorkManager来调度作业。这样可以简化向新架构组件的过渡
我想知道这是什么意思吗?