Flutter 封裝存儲數(shù)據(jù)

什么是shared_preferences?

shared_preferences是Flutter社區(qū)開發(fā)的一個本地數(shù)據(jù)存取插件,它有以下特性:

1.簡單的,異步的,持久化的key-value存儲系統(tǒng);

2.在Android上它是基于SharedPreferences的;

3.在iOS上它是基于NSUserDefaults的;


shared_preferences如何使用?

在pubspec.yaml 中添加

# 數(shù)據(jù)存儲????????shared_preferences: ^0.5.12+4


封裝代碼如下:

import 'package:shared_preferences/shared_preferences.dart';

///

/// SharedPreferences 存儲封裝

///

class SpDataUtils {

static setDate(String key, value)async {

SharedPreferences prefs =await SharedPreferences.getInstance();

? ? if (valueis String) {

????prefs.setString(key, value);

? ? }else if (valueis num) {

????prefs.setInt(key, value);

? ? }else if (valueis double) {

????prefs.setDouble(key, value);

? ? }else if (valueis bool) {

????prefs.setBool(key, value);

? ? }else if (valueis List) {

????prefs.setStringList(key, value.cast());

? ? }

}

/// 返回數(shù)據(jù)data -> replace -> null

? static FuturegetData(String key, [dynamic replace])async {

? ?SharedPreferences prefs =await SharedPreferences.getInstance();

? ? var data = prefs.get(key);

? ? return data ?? replace ??null;

? }

///刪除指定數(shù)據(jù)

? static void remove(String key)async {

? ?SharedPreferences prefs =await SharedPreferences.getInstance();

? ? prefs.remove(key); //刪除指定鍵

? }

///清除數(shù)據(jù)

? static void clear()async {

? ?SharedPreferences prefs =await SharedPreferences.getInstance();

? ? prefs.clear(); ////清空緩存

? }

}


使用:

取值:

SpDataUtils.getData('isSplash',false).then((result){

});

設(shè)置值

SpDataUtils.setDate('isSplash', true);

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容