後台程序

當你的應用被切換到後台時,是否仍希望它在後台可以執行一些業務邏輯?在 Flutter 裡,你可以在應用被切換到後台時執行一些程式碼邏輯。

這個功能的機制主要是設定一個 isolate。isolate 是 Dart 中的多執行緒模型,不過其與傳統執行緒的不同之處在於它不與主程序共享記憶體。你可以使用回呼和回呼排程器來設定 isolate,從而使應用被切換進後台時仍能執行一些業務。

此外,WorkManager 外掛可以實現持久化的後台程序,應用和系統重啟之後還可以繼續執行計劃任務。

有關在後台程序中使用 Dart 程式碼的 geofencing 案例,你可以查閱發布在 Flutter on Medium 上的一篇文章: Executing Dart in the Background with Flutter Plugins and Geofencing。在這篇文章的最後,你可以找到範例程式碼的連結,以及相關的 Dart、iOS 和 Android 文件。