当使用flutter关闭应用程序时,是否可以像“后台服务”一样运行代码?

Mau*_*dre 5 flutter

即使应用程序关闭,我也需要每 30 秒运行一次飞镖代码。这是可能的?

建议的一些解决方法是将 AlarmManager 用于 Android,但是,我没有找到适用于 iOS 的解决方案。

Axe*_*nds 6

没有关于如何实现隔离以在应用程序关闭而不运行某些本机代码的情况下工作的好文章。总共,我花了整整两天的时间试图找到一个可以实现此目的的软件包,但没有任何有效的方法。当应用程序被杀死时,Flutter_Isolate 不会运行,Flutter Workmanager 只能执行打印语句,但不能接受任何函数或任何方法调用。最终可悲且非常烦人。唯一的解决方案似乎是编写本机代码来在应用程序关闭时处理后台任务。颤抖可耻。


Rub*_*elo 3

对的,这是可能的。您可以在后台运行 Flutter。

\n\n
\n

在 Flutter 中,您可以在后台执行 Dart 代码。

\n\n

此功能的机制涉及设置隔离。\n 隔离是用于多线程的 Dart\xe2\x80\x99s 模型,但隔离\n 与传统线程的不同之处在于\xe2\x80\x99 不共享内存\n与主程序。您\xe2\x80\x99将使用回调和回调调度程序设置后台执行的隔离。

\n
\n\n

来源:后台进程

\n