什么是 shared_preferences
shared_preferences是Flutter社区开发的一个本地数据存取插件,它有以下特性:
- 简单的,异步的,持久化的key-value存储系统;
- 在Android上它是基于 SharedPreferences 的;
- 在iOS上它是基于NSUserDefaults的;
如何使用 shared_preferences
首先在pubspec.yaml文件中添加:
dependencies:
shared_preferences: any
在需要用到的文件中导入:
import 'package:shared_preferences/shared_preferences.dart';
基本使用:
/// 存储数据
_saveData(Number data) async {
// 因为SharedPreferences的存贮也是一个轻量级的耗时操作,所以需要在异步中进行的。
SharedPreferences prefs = await SharedPreferences.getInstance();
await prefs.setInt('number', data);
}
/// 读取数据
Number _getData() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
var data = prefs.getInt('number') ?? 0;
return data;
}
/// 删除数据
_deleteData() {
SharedPreferences prefs = await SharedPreferences.getInstance();
prefs.remove('number');
}
常用 API
如上述代码,shared_preferences支持 int, double, bool, string 与 stringList 类型的数据存储;