使用应用程序时颤动后台任务

Posted

技术标签:

【中文标题】使用应用程序时颤动后台任务【英文标题】:Flutter background task when app is being used 【发布时间】:2021-07-01 11:07:57 【问题描述】:

这个问题是关于flutter框架的。

我正在寻找有关如何在用户使用应用程序时在应用程序中安排后台任务的信息。当整个应用程序在后台/关闭时,也不需要运行任务。

为了解释,举个例子: 用户启动应用程序并转到新闻文章。页面完成渲染,用户开始阅读。当用户阅读时,我希望应用程序在后台执行任务,例如检查是否有新数据可以写入数据库,或者其他用户的头像是否有更新,应该在用户的手机上更新。

有人知道去哪里找这个吗?

【问题讨论】:

【参考方案1】:

如果是简单的任务,你可以使用 Timer:

https://api.flutter.dev/flutter/dart-async/Timer-class.html

但它不能广播消息,因此您应该使用 provider,或者如果它对时间要求很高且任务繁重,则应该使用隔离:

https://api.flutter.dev/flutter/dart-isolate/Isolate-class.html

如果你不熟悉隔离,你可以使用现成的包,比如这个:https://pub.dev/packages/flutter_isolate

【讨论】:

以上是关于使用应用程序时颤动后台任务的主要内容,如果未能解决你的问题,请参考以下文章

如何在颤动的后台运行时钟计时器?

ios - 在后台创建会话下载任务

如果前台应用程序终止,如何通知后台任务?

当应用程序从后台删除或设备重启时使用 NSURLSession 恢复任务

切换后台任务时SIGPIPE崩溃

UWP 后台任务系统关闭