反转调度器和服务层之间的依赖关系
概述
#服务层现在依赖于调度器层。以前,情况正好相反。如果您定义了覆盖 Flutter 的 SchedulerBinding
或 ServicesBinding
的自定义绑定,这可能会影响到您。
背景
#在此更改之前,调度器层依赖于服务层。此更改反转了依赖链,并允许服务层利用调度器层中的调度原语。例如,服务层中的服务现在可以通过使用 SchedulerBinding.scheduleTask
来调度任务。
变更说明
#此更改仅影响基于 Flutter 的 SchedulerBinding
和 ServicesBinding
定义自己的自定义绑定的用户。
迁移指南
#在此更改之前,ServiceBinding
必须在 SchedulerBinding
之前定义。此次更改后,情况正好相反
迁移前的代码
Dart
class FooBinding extends BindingBase with ServicesBinding, SchedulerBinding {
// ...
}
迁移后的代码
Dart
class FooBinding extends BindingBase with SchedulerBinding, ServicesBinding {
// ...
}
时间线
#发布版本:1.18.0
稳定版本中:1.20
参考资料
#API 文档
相关 PR