我们有一个使用最新版本的Android work manager 1.00.00调度重复工作的应用程序。该工作每20分钟运行一次。在发布更新之后,我们在Google开发者控制台上注意到了以下崩溃。
最初的回答:
java.lang.IllegalStateException:
at android.os.Parcel.readException (Parcel.java:1691)
at android.os.Parcel.readException (Parcel.java:1636)
at android.app.job.IJobScheduler$Stub$Proxy.schedule (IJobScheduler.java:158)
at android.app.JobSchedulerImpl.schedule (JobSchedulerImpl.java:42)
at androidx.work.impl.background.systemjob.SystemJobScheduler.scheduleInternal (SystemJobScheduler.java:161)
at androidx.work.impl.background.systemjob.SystemJobScheduler.schedule (SystemJobScheduler.java:128)
at androidx.work.impl.Schedulers.schedule (Schedulers.java:91)
at androidx.work.impl.utils.ForceStopRunnable.run (ForceStopRunnable.java:100)
at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:607)
at java.lang.Thread.run (Thread.java:761)
这个错误只会在运行Android 7.0和7.1的设备上(100%)发生。由于堆栈跟踪中没有提到我们的代码,因此我们无法知道是什么原因导致了这个问题。
请注意,我们使用自定义的WorkManager初始化。另外请注意,由于我们没有收到有关崩溃的电子邮件,所以该错误可能对用户不可见。
有人知道这是怎么回事吗?
最初的回答:
diff
比较即可。 - Martin Zeitler