sharedStore.dart 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. // 简单封装 shared preferences 避免忘记代码
  2. import 'package:shared_preferences/shared_preferences.dart';
  3. class SharedStore {
  4. final Future<SharedPreferences> sharedStorage = SharedPreferences.getInstance();
  5. //
  6. Future<bool?> getBool(String key) async {
  7. SharedPreferences prefs = await sharedStorage;
  8. return prefs.getBool(key);
  9. }
  10. Future<bool> setBool(String key, bool value) async {
  11. SharedPreferences prefs = await sharedStorage;
  12. return prefs.setBool(key, value);
  13. }
  14. //
  15. Future<double?> getDouble(String key) async {
  16. SharedPreferences prefs = await sharedStorage;
  17. return prefs.getDouble(key);
  18. }
  19. Future<bool> setDouble(String key, double value) async {
  20. SharedPreferences prefs = await sharedStorage;
  21. return prefs.setDouble(key, value);
  22. }
  23. //
  24. Future<int?> getInt(String key) async {
  25. SharedPreferences prefs = await sharedStorage;
  26. return prefs.getInt(key);
  27. }
  28. Future<bool> setInt(String key, int value) async {
  29. SharedPreferences prefs = await sharedStorage;
  30. return prefs.setInt(key, value);
  31. }
  32. //
  33. Future<String?> getString(String key) async {
  34. SharedPreferences prefs = await sharedStorage;
  35. return prefs.getString(key);
  36. }
  37. Future<bool> setString(String key, String str) async {
  38. SharedPreferences prefs = await sharedStorage;
  39. return prefs.setString(key, str);
  40. }
  41. //
  42. Future<List<String>?> getStringList(String key) async {
  43. SharedPreferences prefs = await sharedStorage;
  44. return prefs.getStringList(key);
  45. }
  46. Future<bool> setStringList(String key, List<String> list) async {
  47. SharedPreferences prefs = await sharedStorage;
  48. return prefs.setStringList(key, list);
  49. }
  50. // 删
  51. Future<void> remove(String key) async {
  52. SharedPreferences prefs = await sharedStorage;
  53. await prefs.remove(key);
  54. }
  55. // 查
  56. Future<bool> containsKey(String key) async {
  57. SharedPreferences prefs = await sharedStorage;
  58. return prefs.containsKey(key);
  59. }
  60. }