跳至主要內容

反轉排程器與服務層之間的依賴關係

摘要

#

服務層現在依賴於排程器層。先前情況則相反。如果您定義了自訂的綁定覆寫 Flutter 的 SchedulerBindingServicesBinding,這可能會影響您。

背景

#

在此變更之前,排程器層依賴於服務層。此變更反轉了依賴鏈,並允許服務層使用排程器層中的排程原語。例如,服務層中的服務現在可以使用 SchedulerBinding.scheduleTask 來排程任務。

變更說明

#

此變更僅影響定義自己基於 Flutter 的 SchedulerBindingServicesBinding 自訂綁定的使用者。

移轉指南

#

在此變更之前,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