WorkManager 导致广播 ANR

met*_*eva 8 android android-anr-dialog kotlin android-jetpack androidx

我正在使用新库WorkManager 进行定期工作和一次性工作请求。目前使用的lib版本是1.0.0,最小SDK是21,编译是28。

工作管理器按照文档中的描述完成工作,但会导致在 Play 商店控制台中看到大量 ANR。

我正在使用代码来触发工作,例如:

     WorkManager.getInstance().enqueueUniquePeriodicWork(
                tag,
                ExistingPeriodicWorkPolicy.KEEP,
                workRequest
        )
and         WorkManager.getInstance().enqueue(workRequest)
Run Code Online (Sandbox Code Playgroud)

最常见的 ANR 来自带有封装的广播接收器,androidx.work.impl.background.systemalarm.RescheduleReceiver这主要是 OnePlus 手机的问题。我发现,在工作管理问题追踪某种联系的问题,但这个国家的bug修复在以前的版本这个问题。尽管如此,按照跟踪器中提到的步骤,我看到日志显示此问题在 1.0.0 版中仍然存在。我所看到的 ANR 无法在我拥有的测试设备上重现。

Але*_*кий -1

尝试WorkerManager使用CoroutineWorker这个会对你有帮助