mirror of
https://github.com/wger-project/flutter.git
synced 2026-02-18 00:17:48 +01:00
feat: preference helper singleton for easy access for preferences
This commit is contained in:
26
lib/helpers/shared_preferences.dart
Normal file
26
lib/helpers/shared_preferences.dart
Normal file
@@ -0,0 +1,26 @@
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
import 'package:shared_preferences/util/legacy_to_async_migration_util.dart';
|
||||
|
||||
class PreferenceHelper {
|
||||
SharedPreferencesAsync _asyncPref = SharedPreferencesAsync();
|
||||
|
||||
PreferenceHelper._instantiate();
|
||||
|
||||
static final PreferenceHelper _instance = PreferenceHelper._instantiate();
|
||||
|
||||
static SharedPreferencesAsync get asyncPref => _instance._asyncPref;
|
||||
|
||||
static PreferenceHelper get instance => _instance;
|
||||
|
||||
Future<void> migrationSupportFunctionForSharedPreferences() async {
|
||||
const SharedPreferencesOptions sharedPreferencesOptions =
|
||||
SharedPreferencesOptions();
|
||||
final SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
await migrateLegacySharedPreferencesToSharedPreferencesAsyncIfNecessary(
|
||||
legacySharedPreferencesInstance: prefs,
|
||||
sharedPreferencesAsyncOptions: sharedPreferencesOptions,
|
||||
migrationCompletedKey: 'migrationCompleted',
|
||||
);
|
||||
_asyncPref = SharedPreferencesAsync();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user