secureStore.dart 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. // 简单封装 flutter_secure_storage
  2. import 'package:flutter_secure_storage/flutter_secure_storage.dart';
  3. class SecureStore {
  4. final FlutterSecureStorage storage = const FlutterSecureStorage();
  5. //
  6. Future<bool?> getBool(String key) async {
  7. String? value = await storage.read(key: key);
  8. return value != null ? bool.parse(value) : null;
  9. }
  10. Future<bool> setBool(String key, bool value) async {
  11. try {
  12. await storage.write(key: key, value: value.toString());
  13. return true;
  14. } catch (error) {
  15. return false;
  16. }
  17. }
  18. //
  19. Future<double?> getDouble(String key) async {
  20. String? value = await storage.read(key: key);
  21. return value != null ? double.parse(value) : null;
  22. }
  23. Future<bool> setDouble(String key, double value) async {
  24. try {
  25. await storage.write(key: key, value: value.toString());
  26. return true;
  27. } catch (error) {
  28. return false;
  29. }
  30. }
  31. //
  32. Future<int?> getInt(String key) async {
  33. String? value = await storage.read(key: key);
  34. return value != null ? int.parse(value) : null;
  35. }
  36. Future<bool> setInt(String key, int value) async {
  37. try {
  38. await storage.write(key: key, value: value.toString());
  39. return true;
  40. } catch (error) {
  41. return false;
  42. }
  43. }
  44. //
  45. Future<String?> getString(String key) async {
  46. String? value = await storage.read(key: key);
  47. return value;
  48. }
  49. Future<bool> setString(String key, String str) async {
  50. try {
  51. await storage.write(key: key, value: str);
  52. return true;
  53. } catch (error) {
  54. return false;
  55. }
  56. }
  57. // 删
  58. Future<void> remove(String key) async {
  59. await storage.delete(key: key);
  60. }
  61. // 查
  62. Future<bool> containsKey(String key) {
  63. return storage.containsKey(key: key);
  64. }
  65. }