WorkManager 系列课程 | MAD Skills

我们在不久前刚刚结束了一个 关于 WorkManager 的 MAD Skills 系列课程。在系列的最开始,我们为新接触的开发者们介绍了 WorkManager,随后,我们深入探讨了该库的高级用途,包括如何测试和调试您的 WorkManager 代码。在最后一集中,我们介绍了如何将 GCMNetworkManager 和 FirebaseJobDispatcher 中的旧代码迁移到 WorkManager。

下面我们来对其中的内容进行简单回顾。

第 1 集: WorkManager: 基础知识

在第 1 集中,我们通过 WorkManager Codelab 探索了 WorkManager 的基础知识。首先,我们了解了如何定义想要完成的工作,以及如何制定工作计划。接着,我们实现了一些不同类型的工作,包括一次性工作和周期性工作。本集最后介绍了 应用待机存储分区 (App Standby Buckets),以帮助您更好地了解 WorkManager 计划工作的方式。

如果您是首次使用 WorkManager,我们建议您阅读下列文章:

第 2 集: WorkManager: 后台运行任务

本集由 Ben 为您深入介绍 WorkManager 如何处理多线程。在处理线程时,您可以选择使用 Executor、coroutine 或 RxJava,而 Ben 使用 WorkManager 为您演示了每一种方法。在本集的最后,Ben 还演示了如何在工作完成后返回结果,以使界面随之更新。

如果您想将 WorkManager 和 coroutine 一起使用,我们建议您阅读 Florina 的这篇文章: WorkManager - Kotlin API

第 3 集: WorkManager: 高级配置和测试

在第 3 集中,我们介绍了如何自定义 WorkManager 的初始化,以及如何支持跨多个进程的应用。我们收到了开发者关于测试和调试的问题,因此 Ben 还深入讲解了如何测试 Worker,以及一些实用调试方法。

第 4 集: 从 GCM NetworkManager 和 FirebaseJobDispatcher 迁移到 WorkManager

在第 4 集中,我们重点介绍了如何从旧的作业调度库 (GCMNetworkManager 和 FirebaseJobDispatcher) 迁移到使用 WorkManager。一旦您的应用开始以 API 级别 30 及更高版本为目标平台,则 GCM NetworkManager 和 FirebaseJobDispatcher 在 Android 6.0 及以上版本的设备将会不工作。如果您的应用仍然在使用这两个库,是时候将其更新,并且改用 WorkManager 了!

第 5 集: Hugo 谈 WorkManager

Android GDE Hugo Visser 谈论了他为何选择在自己最近开发的一款健康应用中使用 WorkManager,以及该库为他的开发工作带来了哪些帮助。

第 6 集: 现场问答

在本系列课程的最后是一个问答环节,我们回答了大家提出的 WorkManager 相关问题。观看视频了解所有的问题答案,包括 WorkManager 的未来计划、如何处理重复工作、如何重试失败工作,等等。