你是否曾想在后台执行 Dart 代码——即使你的应用不是当前激活的应用?也许你想实现一个监视时间或捕获相机移动的进程。在 Flutter 中,你可以在后台执行 Dart 代码。

此功能所涉及的机制包括设置一个 Isolate。Isolates 是 Dart 的多线程模型,但 Isolate 与传统线程的不同之处在于它不与主程序共享内存。你将通过回调和回调分发器来设置 Isolate 以进行后台执行。

此外,WorkManager 插件支持持久的后台处理,可在应用重启和系统重启后保持任务调度。

有关更多信息以及一个使用 Dart 代码后台执行的地理围栏示例,请参阅 Ben Konyi 在 Medium 上的文章,使用 Flutter 插件和地理围栏在后台执行 Dart 代码。在本文的末尾,你将找到示例代码以及 Dart、iOS 和 Android 的相关文档链接。