【发布时间】:2021-01-26 21:10:24
【问题描述】:
我一直在颤振中使用 shared_preferences,直到现在工作正常。突然,它在 iOS 和 Android 中都停止了工作。我一步一步调试它,它将数据存储到 pref,当应用程序打开时,数据仍然存在,但热重启后 _preferencecache 总是为空。我该如何解决这个问题? (版本为 0.5.12)
当用户登录时,我会保存 user_id:
final prefs = await SharedPreferences.getInstance();
final userData = json.encode(
{
'user_id': userID,
},
);
prefs.setString('userData', userData);
稍后,当用户再次重启时:
final prefs = await SharedPreferences.getInstance();
if (!prefs.containsKey('userData')) {
// print("no user data in shared preference");
return false;
}
但是abpve函数返回false,就是这个问题,我也查过之前版本的shared_preferences,但是没有解决。
【问题讨论】:
-
此插件在后台使用本机共享首选项(适用于 android)和用户默认设置(iOS)。还没遇到过这样的问题。您在哪个版本的 android 上运行您的应用程序? 10 点?
-
您可能需要向我们展示更多代码。自从 SharedPreferences 可用以来,我就一直在使用它,并且从未遇到过这个问题,也没有看到有人报告过类似的情况。
-
上面的代码是我使用sharedpreferences的主要部分,获取数据后,我将其写入prefs,当应用程序运行时,我可以很容易地看到它,但稍后重启后,没有数据那里。我应该多显示什么,也许你可以指定,所以我添加..
-
是的 10,但不幸的是,我在模拟器中尝试了 9 以及相同的结果:(
标签: flutter dart sharedpreferences