确保功能在应用程序关闭之前结束 - Flutter

Make sure a function ends before the app close - Flutter

我正在使用 flutter 制作一个应用程序,它有一个缓存数据库。更新过程在从服务器插入新数据之前截断表。

目前,如果我在更新功能运行时关闭应用程序,更新中途中断,数据未完全更新。

我怎样才能避免这种情况?

使用 application_state 标志

您可以创建一个不会被更新截断的 table 调用它 migrationsupdates
在开始更新之前,在 table 中插入一条记录,其中包含一个名为 application_state 的标志,其值为 updating.
更新完成后,将其值更改为 updated.
每当您打开您的应用程序时,请查看 application_state 是否为 updating,以重新运行您的更新,因为它失败了。
请注意,您也可以使用此 table 来跟踪用户更新,使用 timesteps 或其他一些逻辑 ...