share_preferences.dart
1.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
import 'dart:convert';
import 'package:shared_preferences/shared_preferences.dart';
class SharePreferenceUtils {
SharePreferenceUtils._internal(); // 工厂函数单例
static final SharePreferenceUtils _instance = SharePreferenceUtils._internal();
factory SharePreferenceUtils() {
return _instance;
}
late SharedPreferences _prefs;
Future<void> init() async {
_prefs = await SharedPreferences.getInstance();
}
Future<bool> setJSON(String key, dynamic jsonVal) {
String jsonString = jsonEncode(jsonVal);
return _prefs.setString(key, jsonString);
}
dynamic getJSON(String key) {
String? jsonString = _prefs.getString(key);
return jsonString == null ? null : jsonDecode(jsonString);
}
Future<bool> setInt(String key, int value) {
return _prefs.setInt(key, value);
}
int? getInt(String key) {
int? temp = _prefs.getInt(key);
return temp ?? 0;
}
bool? getBool(String key) {
return _prefs.getBool(key);
}
Future<bool> setBool(String key, bool val) {
return _prefs.setBool(key, val);
}
Future<bool> setString(String key, String value) {
return _prefs.setString(key, value);
}
String getString(String key) {
String? str = _prefs.getString(key);
return str ?? '';
}
Future<bool> remove(String key) {
return _prefs.remove(key);
}
//设置token
static saveToken(String token) async {
SharedPreferences preferences = await SharedPreferences.getInstance();
return preferences.setString("token", token);
}
static Future<String?> getToken() async {
SharedPreferences preferences = await SharedPreferences.getInstance();
return preferences.getString("token");
}
}