setBunchDataToSp static method

dynamic setBunchDataToSp({
  1. required Map<String, dynamic> data,
})

Implementation

static setBunchDataToSp({required Map<String, dynamic> data}) async {
  final SharedPreferences prefs = await SharedPreferences.getInstance();

  Future<void> setValue(String key, dynamic value) async {
    dynamic type = value.runtimeType;

    if (type == String) {
      await prefs.setString(key, value);
    } else if (type == int) {
      await prefs.setInt(key, value);
    } else if (type == double) {
      await prefs.setDouble(key, value);
    } else if (type == bool) {
      await prefs.setBool(key, value);
    } else {
      await prefs.setString(key, value);
    }
  }

  data.forEach((key, value) async {
    try {
      await setValue(key, value ?? '');
    } catch (e) {
      print('Error while setting $key: $e');
    }
  });
}