前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android Studio 对现代 WorkManager 的支持

Android Studio 对现代 WorkManager 的支持

作者头像
Android 开发者
发布2022-03-28 15:04:26
4200
发布2022-03-28 15:04:26
举报
文章被收录于专栏:Android 开发者Android 开发者

上一篇文章 中,我们提到了现代 WorkManager API 对工具支持方面也进行了改进,本文我们将结合实际案例来看看具体有哪些改进。如果您更喜欢通过视频了解此内容,请 点击此处 查看。

从 Android Studio Arctic Fox 开始,您可以直接 在 Android Studio 内使用后台任务检查器检查和调试 Worker

后台任务检查器是应用检查套件的一部分,它针对应用的几个方面提供更丰富详细的信息。为了充分利用检查器,您的应用需要使用 WorkManager 2.5 或更新的版本。

应用检查器启用方法

首次打开应用检查器的最快方法是: 连续按两下 "Shift" 键,然后在弹出对话框中输入 App Inspection 并按回车键确认。您也可以从菜单栏依次选择: View → Tool Window → App Inspection 来打开应用检查器面板。

△ 打开 App Inspection 面板
△ 打开 App Inspection 面板

△ 打开 App Inspection 面板

示例演示

本次演示使用了 Android Studio Bumblebee 和 GitHub 上公开的 WorkManager 示例

在 App Inspection 面板中切换到后台任务检查器 (Background Task Inspector) 标签,勾选应用中的 Filter,然后点击 Apply 按钮。可以看到在随着过滤的持续进行,每个 Worker 在其生命周期中的状态也在持续变化着。由于这些 Worker 按照顺序运行,所以 CleanupWorker 需要在下一个 Worker 开始之前完成。其他的所有 Worker 此时要么处于排队状态,要么处于阻塞状态。

△ 使用 WorkManagerSample 应用和应用检查器面板
△ 使用 WorkManagerSample 应用和应用检查器面板

△ 使用 WorkManagerSample 应用和应用检查器面板

现在 CleanupWorker 已经完成,队列中的其他 Worker 也将按照次序运行。

△ 使用应用检查器面板的图表视图
△ 使用应用检查器面板的图表视图

△ 使用应用检查器面板的图表视图

您也可以从类似图示的图像中查看整个接续队列的内容。请从中选择一个 Worker,切换到图表视图 (按钮为流程图样式)。对于更加复杂的队列来说,图表视图是一种高效且不可或缺的理解手段。从这两种视图中,您都可以直接点击任何 Worker 来获得更详尽的分析。

△ 后台任务的详细信息
△ 后台任务的详细信息

△ 后台任务的详细信息

在顶部是一个基本的说明信息,包括可点击的类名和一个唯一 ID。

数据库检查器

△ 数据库检查器面板
△ 数据库检查器面板

△ 数据库检查器面板

前面的内容我们谈到,WorkManager 会将您的工作数据持久化,那么下面我们用数据库检查器 (Database Inspector) 进一步看看这是怎样实现的。您可以点击数据库检查器标签页,并在其中查找某项工作的唯一 ID。您会发现,有关该特定执行的各项信息都被保存下来了。

后台任务检查器

您还可以进一步查看某个特定的执行被安排到了哪一个队列中。和手动搜索调用信息相比,这种经过编组整理的方式能够明显提升分析效率。您可以看到特定 Worker 是否受到限制,以及更加详细的频率和执行状态信息。

WorkManager 可以使用其中一个 Worker 的输出数据,并将其传递到流水线下游的另一个 Worker 中。这一点您可以从任务详细信息的结果 (Results) 中看到。输出数据包含着每个 Worker 的唯一标识符,会按照队列顺序进行传递。

△ 演示 Worker 执行失败的场景
△ 演示 Worker 执行失败的场景

△ 演示 Worker 执行失败的场景

这里为您展示当工作链中的某个 Worker 执行失败时的场景。在工作的接续队列中插入了一个出错的 Worker,然后重启应用。可以看到,上一次运行的结果仍然在这里供您检查。这也进一步印证了刚才说到的工作数据持久化特性。这里启动并应用过滤器,选择 Worker 后再次点击图表视图,这样就能迅速定位工作开始出错的位置 (您可以留意这里的感叹号)。您可以从这里点击直接进入 Worker 视图,然后继续调试出错的会话。

了解更多

通过本文您已经对新的后台任务检查器做了简单了解。以上便是 WorkManager 相关全部内容,如需更多资源,请参阅:

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022/02/22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 应用检查器启用方法
  • 示例演示
  • 数据库检查器
  • 后台任务检查器
  • 了解更多
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档