You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
1.1 KiB
Dart
38 lines
1.1 KiB
Dart
|
2 years ago
|
import 'dart:convert';
|
||
|
|
|
||
|
2 years ago
|
import 'package:shared_preferences/shared_preferences.dart';
|
||
|
|
|
||
|
2 years ago
|
class MyShared {
|
||
|
|
static saveString(String key, String value) async {
|
||
|
2 years ago
|
final SharedPreferences prefs = await SharedPreferences.getInstance();
|
||
|
|
prefs.setString(key, value);
|
||
|
2 years ago
|
}
|
||
|
|
|
||
|
|
static Future<String?>? readString(String key) async {
|
||
|
2 years ago
|
final SharedPreferences prefs = await SharedPreferences.getInstance();
|
||
|
|
final String? source = prefs.getString(key);
|
||
|
2 years ago
|
return source;
|
||
|
|
}
|
||
|
|
|
||
|
|
static saveJson(String key, Map value) async {
|
||
|
2 years ago
|
final SharedPreferences prefs = await SharedPreferences.getInstance();
|
||
|
|
prefs.setString(key, json.encode(value));
|
||
|
2 years ago
|
}
|
||
|
|
|
||
|
|
static Future<Map?>? readJson(String key) async {
|
||
|
|
try {
|
||
|
2 years ago
|
final SharedPreferences prefs = await SharedPreferences.getInstance();
|
||
|
|
final String? source = prefs.getString(key);
|
||
|
2 years ago
|
|
||
|
|
if (source == null) {
|
||
|
|
return null;
|
||
|
|
}
|
||
|
2 years ago
|
final decodedJson = json.decoder.convert(source);
|
||
|
2 years ago
|
//var decodedJson = json.decode(source);
|
||
|
|
return decodedJson;
|
||
|
|
} catch (err) {
|
||
|
|
return null;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|