get<T> method
根据默认值的类型获取对应类型的值
Implementation
Future<T> get<T>(String key, T defaultValue) async {
Object? result;
var sharedPreferences = await _prefsFuture;
if (defaultValue is bool) {
result = sharedPreferences.getBool(key);
} else if (defaultValue is String) {
result = sharedPreferences.getString(key);
} else if (defaultValue is double) {
result = sharedPreferences.getDouble(key);
} else if (defaultValue is int) {
result = sharedPreferences.getInt(key);
} else {
debugPrint('SharedPreferenceService: get($key, $T) not supported');
throw 'SharedPreferenceService: get($key, $T) not supported';
}
return (result as T?) ?? defaultValue;
}