相关疑难解决方法(0)

应用程序关闭时共享首选项将被删除

我正在使用 flutter 构建登录屏幕,并在共享首选项中保存用户数据(如果正确)\n然后我在第二个屏幕中测试了保存的数据,它已经保存\n当应用程序关闭并再次打开时,我检查共享pref 但它变成了 null\n那是我的 saveData 和 getData 函数

\n\n
String namePref,phonePref, typePref,statePref;\nFuture saveDataPref(String name,String phone, String type, String state )async{\n  SharedPreferences pref = await SharedPreferences.getInstance();\n  pref.setString(\'phone\', phone);\n  pref.setString(\'name\', name);\n  pref.setString(\'type\', type);\n  pref.setString(\'state\', state);\n  pref.commit();\n  print(\'pref stored\');\n  print(\'${pref.getString(\'phone\')}\');\n}\n\nFuture getDataPref() async{\n  SharedPreferences pref = await SharedPreferences.getInstance();\n  phonePref = pref.getString(\'phone\');\n  namePref = pref.getString(\'name\');\n  typePref = pref.getString(\'type\');\n  statePref = pref.getString(\'state\');\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

我应该提到两件事\n“提交”函数已被弃用\n第二件事是代码正在处理已弃用的提交,但现在不是\ni删除了我所做的所有更改,但它仍然无法在我的设备上工作\和其他设备,不知道为什么!\n如果没有解决方案,是否有其他方法可以替代 flutter 中的共享首选项?\n这就是我使用 saveDataPref() 的地方

\n\n
Future login(BuildContext context) async {\n  String password = passwordController.text;\n  String phone = phoneController.text;\n  print("entered login function");\n …
Run Code Online (Sandbox Code Playgroud)

sharedpreferences dart flutter

5
推荐指数
1
解决办法
7831
查看次数

Flutter:未处理的异常:MissingPluginException(在通道plugins.flutter.io/shared_preferences上未找到方法getAll的实现)

我的Flutter应用程序使用Flutter SharedPreferences插件,并通过platform.invokeMethod将值发送到iOS端。如果我启动应用程序,则出现此错误:

[VERBOSE-2:dart_error.cc(16)] Unhandled exception:
MissingPluginException(No implementation found for method getAll on channel plugins.flutter.io/shared_preferences)
#0      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:278:7)
<asynchronous suspension>
#1      SharedPreferences.getInstance (package:shared_preferences/shared_preferences.dart:25:27)
<asynchronous suspension>
#2      main (file:///Users/Developer/workspace/flutter-app/q_flutter2/lib/main.dart:25:53)
<asynchronous suspension>
#3      _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:279:19)
#4      _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:165:12)
Run Code Online (Sandbox Code Playgroud)

如果我注释了将值发送到iOS端的函数,则不会显示错误,并且SharedPreferences可以正常工作。

有人可以帮我吗?

sharedpreferences ios flutter

4
推荐指数
14
解决办法
5044
查看次数

标签 统计

flutter ×2

sharedpreferences ×2

dart ×1

ios ×1