在 Flutter 后台比较和运行代码

Posted

技术标签:

【中文标题】在 Flutter 后台比较和运行代码【英文标题】:Compare And Run Code in the Background Flutter 【发布时间】:2021-01-13 13:27:10 【问题描述】:

大家好,我想像手机闹钟一样在后台运行flutter应用 因为我想让手机静音一段时间 好的,所以当我想从 sqlflite 获取所有数据时,我遇到了错误

这是我在 sqlite 类中写的代码

Future<void> mutephone() async 
    DateTime begin
    var db = await timedb();
    var result = await db.rawQuery("SELECT * FROM time");
    List<Map<String, dynamic>> snapshot = result.toList();
    for (int i = 0; i <= snapshot.length; i++) 

      if (begin==DateTime.parse(snapshot[i]["fromtime"])) 
        print("hi");

主要功能:

await db.mutephone();

我可以制作每 1 秒运行一次代码进行检查的函数吗?

【问题讨论】:

【参考方案1】:

您可以使用Timer.periodic(...) 定期运行代码(例如在您的情况下每 1 秒运行一次)。

import 'dart:async';

Timer.periodic(
     const Duration(seconds: 1), 
     (t) => /* do your stuff */,
);

【讨论】:

好的,获取数据并进行比较呢?你有什么解决办法吗?

以上是关于在 Flutter 后台比较和运行代码的主要内容,如果未能解决你的问题,请参考以下文章

flutte的第一个hello world程序

flutte学习-编译模式

flutte学习-编译模式

如何在 Flutter 应用程序的后台运行代码?

Flutter:在应用程序关闭或在后台运行原生 android 代码

如何分别在android和ios上本地运行flutter应用程序?