Firebase Jobdispatcher间隔不可靠

时间:2017-07-27 22:04:09

标签: android alarmmanager wakeup

由于AlarmManager,Google迫使我停止使用Excessive Wakeups。 我现在应该使用JobScheduler,但我的应用应该支持API <21的旧设备。 所以我必须使用Firebase JobDispatcher: - (

但是,在我看来,与JobDispatcher不同,AlarmManager不可靠。

我将间隔设置为每60秒(1分钟)。 但JobService.onStartJob()之间的差距是:

  

1,10,6,1,16,12,1,1,1,1,1,1,1,1,1,1,1,1,12,4,0,1,8   分钟。

如果我将间隔设置为10分钟,则间隙为:

  11,10,10,10,10,10,21,12,10,10,10,10,10,15,10,41,10,   13,14,14,22,10,10,10,10,10,10,10,10,10,10,19,10,10,   34,14,10,10,10,12,10分钟。

我的智能手机(三星Galaxy Alpha,Android 5.0.1)已连接电源但未处于待机状态,电源安全选项已停用。

我做错了什么?

FirebaseJobDispatcher dispatcher = new FirebaseJobDispatcher(new GooglePlayDriver(context));

Job jobWifi = dispatcher.newJobBuilder()
    .setService(ConnectionJobService.class)
    .setTag("tag")
    .setRecurring(true)
    .setLifetime(Lifetime.FOREVER)
    .setTrigger(Trigger.executionWindow(60, 60)) // 600, 600
    .setReplaceCurrent(true)
    .setRetryStrategy(RetryStrategy.DEFAULT_EXPONENTIAL)
    .setExtras(extras)
    .build();

0 个答案:

没有答案