【问题标题】:One flutter screen should be working the entire time regardless of whether i am on that screen or another无论我是在那个屏幕上还是另一个屏幕上,一个颤振屏幕都应该一直工作
【发布时间】:2021-05-19 04:26:57
【问题描述】:

我正在制作一个包含 3 个主屏幕的应用:提醒列表、主屏幕和聊天机器人。我将使用 Dialogflow 集成的聊天机器人,并且我已经完成了待办事项列表。主屏幕的作用是显示通过蓝牙连接从 arduino 获取的脉冲和温度,如果超过或低于某个阈值,则应发起呼叫。我目前进行了呼叫启动,并且脉冲和温度值现在被硬编码。但如果我转到另一个屏幕,主屏幕显然无法发挥作用。有什么方法可以让主屏幕有点像主线程。基本上即使我在聊天机器人屏幕上,主屏幕也应该检查温度和脉冲是否异常,并在需要时发起呼叫。 我不确定这属于什么概念,因此不胜感激。

【问题讨论】:

  • 尝试为此创建一个服务,如果您链​​接,它甚至可以在后台运行。

标签: multithreading flutter dart


【解决方案1】:

您可以使用Isolate class 来实现此目的。

isolate 有自己的内存和一个执行线程,即使在后台运行事件循环,直到你杀死 Isolate。

这里是example如何在flutter中使用Isolate

还有可用于 Isolate flutter_isolate 的颤振包

【讨论】:

  • 另外,如果我希望它在应用程序打开时发挥作用,就像我在 Instagram 上一样,但仍希望更新我的脉搏和温度?
  • 我认为 Isolate 在应用程序处于后台模式时会起作用,但我不确定 100%。当你从后台杀死应用程序时,Isolate 会被杀死。
猜你喜欢
  • 2019-04-08
  • 2020-11-25
  • 1970-01-01
  • 2021-04-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-18
  • 1970-01-01
相关资源
最近更新 更多