[英]How to update table records in sqflite database on a specific date and time in a flutter app?(Android)
我为 Android 开发了 flutter 移动应用程序。 它有一个“付款”数据表。 我需要在 1 月 31 日 23.59 小时更新它。 我怎样才能做到这一点?
在应用程序的主要 class 中调用 function 是不合适的,因为如果在我检查的特定时间没有打开应用程序,数据库将不会更新。 所以在我看来,这应该使用自动更新功能来处理。
我可以想到两种解决方案:
第一:如果支付表的数据只在你的应用中使用,那么你不需要在同一时间更新它。 您可以编写一个在应用程序打开时运行的if
代码(例如在启动屏幕中),以检查是否已通过所需的时间(1 月 31 日 23.59 小时)。 如果过了那个时间,那就做你想做的事情。
第二:您可以使用workmanager 。 这是一个在后台运行 function 的插件。 它有一个registerOneOffTask
function 满足您的需求。
void main() {
Workmanager.initialize(
callbackDispatcher, // The top level function, aka callbackDispatcher
isInDebugMode: true // If enabled it will post a notification whenever the task is running. Handy for debugging tasks
);
Workmanager.registerOneOffTask("1", "simpleTask"); //Android only (see below)
runApp(MyApp());
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.