使用后台任务检查器调试 WorkManager worker

在使用 WorkManager 库 2.5.0 或更高版本时,后台任务检查器有助于您直观呈现、监控和调试应用的后台 worker。

开始

如需在后台任务检查器中列出工作器,请执行以下操作:

  1. 在模拟器或搭载 API 级别 26 或更高版本的已连接设备上运行您的应用。

  2. 从菜单栏中依次选择 View > Tool Windows > App Inspection。

  3. 选择 Background Task Inspector 标签页。

  4. 从菜单中选择正在运行的应用进程。

  5. 当前正在运行的应用中的 worker 会显示在 Background Task Inspector 窗格中。点击要进一步检查的 worker。

查看和检查 worker

当您使用 WorkManager 2.5.0 或更高版本在搭载 API 级别 26 或更高级别的设备上部署应用时,后台任务检查器标签页会显示活跃的 worker。后台任务检查器(如后续部分的图 3 所示)中列出了所有作业(无论作业是正在运行、失败还是已完成)的类名、当前状态、开始时间和重试次数。

Work Details

点击列表中的某项作业,即可打开 Work Details 面板,其中显示了相应 worker 的详情,如图 1 所示。

所选 worker 详细信息的屏幕截图。
图 1. Work Details 面板。
  • Description:此部分列出了包含完全限定软件包的 worker 类名,以及此 worker 的已分配标记和 UUID。
  • Execution:此部分显示了 worker 的约束条件(若有)、运行频率、状态,以及哪个类创建了此 worker 并将其加入队列。
  • WorkContinuation:此部分显示了此 worker 在工作链中所处的位置。如需查看工作链中另一个 worker 的详情,请点击其 UUID。
  • Results:此部分显示了所选 worker 的开始时间、重试次数和输出数据。

取消 worker

如需停止当前正在运行的 worker 或已加入队列的 worker,请选择相应 worker,然后点击工具栏中的 Cancel Selected Worker 图标 。

查看图表视图

由于 worker 可以链接在一起,因此,以图表形式直观呈现 worker 的依赖关系有时会非常有用。

如需查看 worker 链的直观呈现形式,请从表中选择一个 worker,然后点击工具栏中的 Show Graph View 图标 。图表中只绘制了 worker。

图表视图的屏幕截图。
图 2. 图表视图。

通过该图表,您可以快速查看 worker 之间的关系,并监控其在复杂链接关系中的进度。

如需返回列表视图,请点击 Show List View 图标 。

查看和检查作业、alarm 和唤醒锁

借助后台任务检查器,您还可以检查应用的作业、alarm 和唤醒锁。每种类型的异步任务都会显示在检查器标签页的相应标题下,便于您轻松监控其状态和进度。

与 worker 类似,您可以在 Task Details 面板中选择相应作业、alarm 或唤醒锁,以检查其详细信息。

您可以在右侧的 Task Details 面板中选择相应 worker、作业、alarm 或唤醒锁,查看其详细信息。

“Background Task Inspector”窗口的屏幕截图。
图 3. “Background Task Inspector”窗口。

其他资源

如需详细了解后台任务检查器,请参阅下列其他资源:

文档

Codelab

博文