import 'package:shared_preferences/shared_preferences.dart'; import 'package:smoke_cess_app/models/settings.dart'; import 'package:smoke_cess_app/service/json_service.dart'; //access group setting which was saved in local storage Future getGroup() { return getStringSetting('group'); } void setStringSetting(String settingKey, String settingValue) => SharedPreferences.getInstance() .then((pref) => pref.setString(settingKey, settingValue)); Future getStringSetting(String settingKey) => SharedPreferences.getInstance().then((pref) => pref.getString(settingKey)); void setIntSetting(String settingKey, int settingValue) => SharedPreferences.getInstance() .then((pref) => pref.setInt(settingKey, settingValue)); Future getIntSetting(String settingKey) => SharedPreferences.getInstance().then((pref) => pref.getInt(settingKey)); void setStringList(String settingKey, List list) => SharedPreferences.getInstance() .then((pref) => pref.setStringList(settingKey, list)); //Add other setters and getters if needed //other possible SharedPreferences Types: Int, Bool, Double, StringList //see https://pub.dev/packages/shared_preferences Future loadSettings() async { Map configJSON = await loadLocalConfigJSON(); Settings settings = Settings.fromJson(configJSON); print(settings.group); saveSettings(settings); String gruppe = (await getGroup())!; print('Gruppe: $gruppe'); } void saveSettings(Settings settings) { setStringSetting('group', settings.group); setStringSetting('key', settings.key); }