flutter中使用shared_preferences的存储
Posted loaderman
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flutter中使用shared_preferences的存储相关的知识,希望对你有一定的参考价值。
添加依赖
shared_preferences: ^0.5.1+2
工具类
import ‘dart:async‘; import ‘package:shared_preferences/shared_preferences.dart‘; /// 用来做shared_preferences的存储 class SpUtil static SpUtil _instance; static Future<SpUtil> get instance async return await getInstance(); static SharedPreferences _spf; SpUtil._(); Future _init() async _spf = await SharedPreferences.getInstance(); static Future<SpUtil> getInstance() async if (_instance == null) _instance = new SpUtil._(); await _instance._init(); return _instance; static bool _beforeCheck() if (_spf == null) return true; return false; // 判断是否存在数据 bool hasKey(String key) Set keys = getKeys(); return keys.contains(key); Set<String> getKeys() if (_beforeCheck()) return null; return _spf.getKeys(); get(String key) if (_beforeCheck()) return null; return _spf.get(key); getString(String key) if (_beforeCheck()) return null; return _spf.getString(key); Future<bool> putString(String key, String value) if (_beforeCheck()) return null; return _spf.setString(key, value); bool getBool(String key) if (_beforeCheck()) return null; return _spf.getBool(key); Future<bool> putBool(String key, bool value) if (_beforeCheck()) return null; return _spf.setBool(key, value); int getInt(String key) if (_beforeCheck()) return null; return _spf.getInt(key); Future<bool> putInt(String key, int value) if (_beforeCheck()) return null; return _spf.setInt(key, value); double getDouble(String key) if (_beforeCheck()) return null; return _spf.getDouble(key); Future<bool> putDouble(String key, double value) if (_beforeCheck()) return null; return _spf.setDouble(key, value); List<String> getStringList(String key) return _spf.getStringList(key); Future<bool> putStringList(String key, List<String> value) if (_beforeCheck()) return null; return _spf.setStringList(key, value); dynamic getDynamic(String key) if (_beforeCheck()) return null; return _spf.get(key); Future<bool> remove(String key) if (_beforeCheck()) return null; return _spf.remove(key); Future<bool> clear() if (_beforeCheck()) return null; return _spf.clear();
使用:
SpUtil sp = await SpUtil.getInstance(); int value =sp.getInt(”key“);
以上是关于flutter中使用shared_preferences的存储的主要内容,如果未能解决你的问题,请参考以下文章
Flutter中使用flutter_html解析html文件
在flutter中使用Chopper网络库和flutter_bloc库
如何使用 flutter_webview 插件在 Flutter 中启用位置?