Answers:
有几种选择:
如果您想保存一个小的值,请稍后再参考。那么您应该使用shared_preferences将数据存储为键值数据
但是,如果要存储大数据,则应使用SQLITE
但是,您始终可以使用可脱机使用的firebase数据库
由于我们在谈论本地存储,因此您始终可以在磁盘上读写文件
其他解决方案:
sqflite
仅将其存储在手机中。firebase
在中央数据库中同步,您可以在其中执行后端查询。firebase
还使设备之间的同步变得容易。
您可以使用flutter官方插件中的共享首选项。 https://github.com/flutter/plugins/tree/master/packages/shared_preferences
它对Android使用共享首选项,对iOS使用NSUserDefaults。
答案很晚,但我希望它也会对以后再来这里的人有所帮助。
我将提供要保存的类别及其各自的最佳方法...
如果您只需要存储诸如API令牌或登录数据(而不是密码!)之类的简单值,这就是我使用的方法:
import 'package:shared_preferences/shared_preferences.dart';
asyncFunc() async { // Async func to handle Futures easier; or use Future.then
SharedPreferences prefs = await SharedPreferences.getInstance();
}
...
// Set
prefs.setString('apiToken', token);
// Get
String token = prefs.getString('apiToken');
// Remove
prefs.remove('apiToken');
不要忘记shared_preferences
在pubspec.yaml中添加依赖项(保留间距格式):
dependencies:
shared_preferences: any
我认为,如果要在本地存储中存储大量数据,则可以使用sqflite库。设置非常容易,我亲自使用过一些测试项目,并且效果很好。
https://github.com/tekartik/sqflite 这是一个教程-https: //proandroiddev.com/flutter-bookshelf-app-part-2-personal-notes-and-database-integration-a3b47a84c57
如果您要将数据存储在云中,则可以使用firebase。这是由Google提供的可靠服务。