关闭并重新打开选项卡时,颤振腹板Shared_Preferences不可用 [英] Flutter web shared_preferences not available when tab is closed and reopened

查看:23
本文介绍了关闭并重新打开选项卡时,颤振腹板Shared_Preferences不可用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

颤动网现在支持Shared_Preferences。我已将shared_preferences添加到我的Ffltter Web应用程序中。 我的问题是,当我设置首选项时,比如当我启动应用程序时,它在应用程序中的任何地方都运行得很好,但当我关闭浏览器,再次启动应用程序并试图检索它时,它什么也没有返回。如何在关闭并启动应用程序后使其正常工作。

_showPref()async{
SharedPreferences prefs = await SharedPreferences.getInstance();
await prefs.setInt("myKey", 98);
}

@override
  void initState() {
    // TODO: implement initState
    super.initState();
    _showPref();
  }    

// then retrieve with the code
getPrefs(){
   SharedPreferences prefs = await SharedPreferences.getInstance();   
   int count = (prefs.getInt("myKey")??0);
   print(" 2. new prefs: $count");
}

推荐答案

shared_preferences插件在生产模式下正常工作,只需运行flutter build web并提供build/web目录中的文件。

当应用程序在web-server设备(即,使用flutter run --device web-server)上启动时,可能会丢失首选项,因为服务器在任意端口启动。要修复它,请使用选项--web-portLIKE

运行颤动
flutter run -d web-server --web-port 3344
当应用程序在设备上启动时,无法保存会话之间的首选项chrome(命令flutter run -d chrome)。 每次使用随机化的user-data-dir参数启动chrome时,首选项仅在页面刷新后保留,但在重新启动后清除。

在源代码code中解释为:

使用临时目录可确保启动一个新的Chrome实例 允许启用远程调试端口。

这篇关于关闭并重新打开选项卡时,颤振腹板Shared_Preferences不可用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆