当用户关闭应用程序时,Flutter 应用程序会丢失本地数据

标签 flutter flutter-sharedpreference

我的应用程序使用shared_preferences并写入本地json文件(使用path_provider获取路径)来获取它使用的数据。我最近开始对一个更大的群体进行测试(从 22 年 1 月 1 日开始),有些人遇到了一个问题,即当他们关闭应用程序并重新打开它时,数据会丢失。我们正在 Android 和 iOS 上进行测试。第一个遇到此问题的用户是在 iOS 上,并且从一开始就遇到了这个问题。所有其他用户几天前(22 年 1 月 12 日)都遇到了该问题,其中大部分是 iOS 用户,还有 1 位 Android 用户。

数据在应用运行时持续存在,因为在用户导航时数据保持一致。我自己无法复制这个问题,也无法在我的研究中找出问题所在。有什么想法可能会发生什么吗?

我发现了一个类似的问题,提到path_provider提供了不同的存储路径,但这似乎不是我的问题,因为调用的第一条数据是shared_preferences数据,而且它也会丢失。

最佳答案

我做了一些故障排除,我们发现设备(主要是 iOS)正在从共享首选项中删除数据点。我将该数据点迁移到 json 文件,问题就消失了。文档中确实说不要对任何关键数据使用共享首选项,现在我明白为什么了。它最初有效,但后来对很多人来说都出现了问题,所以我将来可能不会使用它。

关于当用户关闭应用程序时,Flutter 应用程序会丢失本地数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70715489/

相关文章:

flutter - 屏幕一侧的绿色 strip 有 video_player 抖动

ios - Codemagic iOS 构建问题

flutter - 如何在 shared_preferences 中创建一个 bool 列表并在那里存储值

Flutter:删除所有已保存的共享首选项

flutter - 未处理的异常 : type 'Null' is not a subtype of type 'List<dynamic>' in type cast

xcode - 如何同时在 Android 和 IOS 模拟器中查看我的 flutter 应用程序输出?

Flutter 如何制作可选择/可聚焦的小部件

flutter - 如何定期设置状态?