在释放模式下的共享首选项值有时会显示旧值,在我的测试期间,它会存储该值,并可以获取我存储的新值,但在关闭应用程序并再次打开之后,有时它会显示旧值,这是我在存储新值之前存储的值。
下面是我的代码示例:存储和获取值:
void setToken(String userToken) async {
var sharedPreferences = await shared;
sharedPreferences.setString("$_token", userToken);
print("token is: " +sharedPreferences.getString("$_token").toString());
}
Future getToken() async {
var sharedPreferences = await shared;
sharedPreferences.reload();
String value = sharedPreferences.getString("$_token");
print("your token: $value");
return value;
}结果消息:
在第一个存储中(获取第一个令牌):token is: eyJhbG.....Ai-A
第二个令牌存储:token is: eyJhbG....oKk
在重新打开app后,我得到了第一个令牌your token: eyJhbG.....Ai-A
有没有人遇到过同样的问题?
发布于 2021-01-27 15:55:52
请复制粘贴以下代码:
void setToken(String userToken) async {
var sharedPreferences = await shared;
sharedPreferences.setString("my_token", userToken);
print("token is: " +sharedPreferences.getString("my_token").toString());
}
Future getToken() async {
var sharedPreferences = await shared;
sharedPreferences.reload();
String value = sharedPreferences.getString("my_token");
print("your token: $value");
return value;
}发布于 2021-01-27 16:26:29
请将此解决方案粘贴到代码中
void setToken(String userToken) async {
var sharedPreferences = await shared;
sharedPreferences.setString("$_token", userToken);
print("token is: " +sharedPreferences.getString("$_token").toString());
}
Future getToken() async {
var sharedPreferences = await shared;
String value = sharedPreferences.getString("$_token");
print("your token: $value");
return value;
}发布于 2021-01-27 17:23:31
尝试这个解决方案,这可能会起作用:
void setToken(String userToken) async {
SharedPreferences sharedPreferences = await SharedPreferences.getInstance();
sharedPreferences.setString("my_token", userToken);
print("token is: " +sharedPreferences.getString("my_token").toString());
}
Future getToken() async {
SharedPreferences sharedPreferences = await SharedPreferences.getInstance();
sharedPreferences.reload();
String value = sharedPreferences.getString("my_token");
print("your token: $value");
return value;
}在运行应用程序之前尝试flutter clean。
https://stackoverflow.com/questions/65914846
复制相似问题