IllegalArgumentException:没有这样的服务ComponentInfo {JobIntentService}

问题描述 投票:6回答:4

关于这个问题的答案没有帮助我,我已经声明了所有权限,并且已经在我的代码中接受了答案。

AppInfoJobService(CustomJobIntentService)在Android OS 8+设备上抛出以下错误,它很少发生,无法重现。我们在BaseActivity的onCreate中排队工作。我们主要有一个活动和片段。

Fatal Exception: java.lang.IllegalArgumentException: No such service ComponentInfo{<app package>AppInfoJobService}
   at android.os.Parcel.readException(Parcel.java:2009)
   at android.os.Parcel.readException(Parcel.java:1951)
   at android.app.job.IJobScheduler$Stub$Proxy.enqueue(IJobScheduler.java:211)
   at android.app.JobSchedulerImpl.enqueue(JobSchedulerImpl.java:53)
   at android.support.v4.app.JobIntentService$JobWorkEnqueuer.enqueueWork(JobIntentService.java:342)
   at android.support.v4.app.JobIntentService.enqueueWork(JobIntentService.java:522)
   at android.support.v4.app.JobIntentService.enqueueWork(JobIntentService.java:500)
   at <application package>AppInfoJobService.startWork(AppInfoJobService.java:254)
   at <application package>MyApplication.onStartStopChanged(MusicApplication.java:694)
   at <application package>AppStateMonitor.notifyStartStop(AppStateMonitor.java:150)
   at <application package>AppStateMonitor.access$000(AppStateMonitor.java:14)
   at <application package>AppStateMonitor$CreateDestroyRunnable.run(AppStateMonitor.java:71)
   at android.os.Handler.handleCallback(Handler.java:790)
   at android.os.Handler.dispatchMessage(Handler.java:99)
   at android.os.Looper.loop(Looper.java:164)
   at android.app.ActivityThread.main(ActivityThread.java:6545)
   at java.lang.reflect.Method.invoke(Method.java)
   at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:857) 
android android-8.0-oreo illegalargumentexception jobintentservice
4个回答
5
投票

注意:开始一个单独的线程,因为我没有足够的声誉来评论并希望帮助作者。

这实际上是具有Android Oreo的LAVA设备的问题,并且与其他设备完全兼容。

我也在LAVA Z60s和LAVA Z61上观察到了这一点。

添加来自crashlytics qazxsw poi的相关信息


3
投票

切换到新的enter image description here后问题终于得到解决


-1
投票

我的情况是我没有在AndroidManifest.xml中创建服务,所以它没有找到该服务。为此,请添加以下内容:

Android WorkManager

-2
投票

当应用程序是后台或应用程序被杀死并尝试重新启动服务时,您无法使用方法startService启动服务或intentService。

据我所知,情况是(正如你所说的很少发生)不知何故应用程序试图重新启动应用程序,而应用程序不在内存中。

© www.soinside.com 2019 - 2024. All rights reserved.