Flutter 数据持久化
2018-12-12 本文已影响401人
iwakevin
在开发应用的时候,有时候需要本地存储一个临时数据,这时候可以使用 Flutter 的 shared_preferences
插件,此插件在 iOS 上使用 NSUserDefaults,在 Android 上使用 SharedPreferences,为简单数据提供持久存储。
先安装依赖:
dependencies:
shared_preferences: ^0.4.2
基本使用
shared_preferences
使用的存储方式是 key-value 形式。
虽然使用键值存储非常简单方便,但它有一些限制:
- 只能使用原始类型: int,double,bool,string 和 string list。
- 它不是用来存储大量数据,因此不适合作为应用程序缓存。
import 'package:shared_preferences/shared_preferences.dart';
getAsyncData() async {
// 获取实例
var prefs = await SharedPreferences.getInstance();
// 获取存储数据
var count = prefs.getInt('count') ?? 0 + 1;
// 设置存储数据
await prefs.setInt('count', count);
}
shared_preferences 实例常用方法:
- get/setInt(key) - 查询或设置整型键。
- get/setBool(key) - 查询或设置布尔键。
- get/setDouble(key) - 查询或设置浮点键。
- get/setString(key) - 查询或设置字符串键。
- get/setStringList(key) - 查询或设置字符串列表键。
- getKeys() - 获取所有键值名。
- remove(key) - 删除某个键内容。
- clear() - 清除全部内容。