赏金三天后到期。回答此问题可获得+50声望奖励。姓想引起更多的注意**这个问题。
我已经延长了 JobService
像这样的:
public class MyJobService extends JobService {
@Override
public boolean onStartJob(JobParameters params) {
return false;
}
@Override
public boolean onStopJob(JobParameters params) {
return false;
}
}
整个类代码以黄色突出显示。
警告说:
指定workmanager要使用的作业id的有效范围。
我做错了什么?我该怎么办?
2条答案
按热度按时间qeeaahzv1#
警告提示,只要
JobService
类,则用户应指定WorkManager
有资格使用“为了不与应用程序其余部分中使用的职务代码冲突”(请参阅setJobSchedulerJobIdRange(int, int)
).这应该在创建
androidx.work.Configuration
示例:不幸的是,我不能使我的设置工作的东西,我必须寻找皮棉的来源(
SpecifyJobSchedulerIdRangeIssueDetector
). 从逻辑上我可以理解,只要有方法调用setJobSchedulerJobIdRange
(请参阅第92行)-然后检测器将假设作业范围id已由用户指定,但这不起作用(至少在我的机器上是这样)。不幸的是,检查探测器的测试类也没有传达任何信息。
现在我可以说:
创建扩展的kotlin类
JobService
不会导致皮棉警告创建扩展
JobService
结果是一个lint警告,但即使在setJobSchedulerJobIdRange()
是在别的班级里表演的JobService
有趣的是setJobSchedulerJobIdRange()
在JobService
类修复了警告:显然,这个检测器实现(或在我的机器上)存在一些问题。
不过,如果您指定了workmanager可以自由使用的ID范围(即,您调用了
setJobSchedulerJobIdRange()
)-那你可以抑制这个警告。f5emj3cl2#
请尝试以下源代码。我在你的代码里找不到任何错误。试着回来
true
而不是false
.欲了解更多信息,请访问链接