一、概述
开发中会遇到需要应用关闭之后重新打开时,某些内容还是会存在,例如登录一个APP,然后关闭再打开,重新打开的APP希望还是登录的,不是每次都要重新登录,这个就需要用到数据存储了。
Android 使用 Sharedpreferences
来实现对于轻量级数据的缓存 , IOS端 使用 NSUserDefaults
来实现轻量级数据的缓存,Flutter中shared_preferences
可同时满足两者需求。
二、准备
1.添加依赖
在pubspec.yaml文件下添加
dependencies:
shared_preferences: ^2.0.8
使用的时候导入引用
import 'package:shared_preferences/shared_preferences.dart';
2.方法介绍
Sharedpreferences可以存储多种基本数据类型,例如int、String、List……,其中只要以键值对的形式存储(key:描述;value:值)
SharedPreferences prefs = await SharedPreferences.getInstance();
// 写入字符串
prefs.setString(key, value);
// 写入int
prefs.setInt(key, value);
// 写入double
prefs.setDouble(key, value);
// 写入布尔值
prefs.setBool(key, value);
// 写入list<String>data类型
prefs.setStringList(key, value);
// 读取字符串
prefs.getString(key);
// 其他类型同上
...
// 删除
prefs.remove(key);
// 清空
prefs.clear();```