*shared_preferences 是什么?
*如何使用 shared_preferences ?
*shared_preferences 有那些常用的API?
*基于 shared_preferences 实现计数器Demo
数据存储是开发APP必不可少的一部分,比如页面缓存,从网络上获取数据的本地持久化等。
Flutter官方推荐我们用sharedpreferences进行数据存储,类似于RN中的 AsyncStorage 。
什么是shared_preferences?
shared_preferences是Flutter社区开发的一个本地数据存取插件:
- 简单的,异步的,持久化的key-value存储系统;
- 在Android上它是基于SharedPreferences的;
- 在iOS上它是基于NSUserDefaults的;
如何使用shared_preferences?
首先在pubspec.yaml文件中进行配置:
dependencies:
shared_preferences: <对应版本>
运行安装哦:flutter packages get
在需要用到的文件中导入:
import 'package:shared_preferences/shared_preferences.dart';
存储数据
final prefs = await SharedPreferences.getInstance();
// set value
prefs.setInt('counter', counter);
读取数据
final prefs = await SharedPreferences.getInstance();
// Try reading data from the counter key. If it does not exist, return 0.
final counter = prefs.getInt('counter') ?? 0;}
删除数据
final prefs = await SharedPreferences.getInstance();
prefs.remove('counter');
shared_preferences一些常用的API
存储相关
如上图shared_preferences支持int, double, bool, string 与 stringList类型的数据存储;
读取相关
上图shared_preferences中所提供的读取相关的API;