当电池电量低于15%时,Job Scheduler不会触发。有没有办法超越电池问题。该设备仅用于特定的应用程序,其他任何东西都不会运行。
该设备是Lenovo Tab 3 A7-10并在Android Lollipop(5.0.1)上运行。
jobScheduler.schedule(new JobInfo.Builder(MY_JOB_ID,
new ComponentName(applicationContext, MyJob.class))
.setPeriodic(syncInterval)
.build());
由于
答案 0 :(得分:0)
根据Android Developers Documentation,
JobInfo.isRequireBatteryNotLow()
声明:
如果电池电量等于或低于严重阈值,则作业不会运行;这是设备显示低电量警告系统对话框的级别。
此外,
setRequiresBetteryNotLow(boolean batteryNotLow)
here声明:
指定要运行此作业,设备的电池电量不能低。默认为 false 。如果 true ,作业将仅在电池电量不低时运行,这通常是用户被给予 低电量的点强>"警告。
不幸的是,对于以下的API 26,使用JobScheduler以及如何使用它的访问权限较少。可能您可能无法使用我在API 26下面提到的方法。您可以在此处找到支持性证据:Android JobScheduler
Firebase JobDispatcher用作针对Android版本低于5.0(API级别21)的应用的JobScheduler兼容层。我不确定它是否会让你实现你想要的场景,但看看它。
感谢@ianhanniballake改进答案并提请注意。
答案 1 :(得分:0)
参考Android Framework JobScheduler
JobInfo.isRequireBatteryNotLow()
如果电池电量等于或低于严重阈值,则作业不会运行;这是设备显示低电量警告系统对话框的级别。
Firebase JobDispatcher 最低API 9 需要Google Play 是 JobScheduler自定义重试策略是强>