我有一个JobIntentService根本不做很多工作,但今天却引起了ANR。
以下列方式从伴随对象调用代码是否有问题?
class MyIntentService : JobIntentService() {
@Inject
lateinit var myObject: MyObject
override fun onCreate() {
super.onCreate()
MyApplication.appComponent(this).inject(this)
}
override fun onHandleWork(intent: Intent) {
//doing work on a separate thread
}
companion object {
fun enqueueMyWork(context: Context, intent: Intent) {
enqueueWork(context, MyIntentService::class.java, JOB_ID, intent)
}
}
}
根据文档,onHandleWork()
中没有任何东西导致ANR,因为该方法是从单独的线程中调用的。
通过伴随对象排队的工作方式是否会导致ANR出现问题?注入代码是我从未遇到过的标准Dagger2依赖注入。
ANR看起来像这样
12-03 13:29:42.272 872-872/? I//system/bin/tombstoned: intercept for pid 29905 and type kDebuggerdNativeBacktrace terminated: due to input