From 35f7029e12d42c2ed0a17733a7f6d3927a6609de Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Sun, 8 Feb 2026 09:06:50 -0800 Subject: [PATCH] Init preferences once --- lib/preferences.dart | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/preferences.dart b/lib/preferences.dart index 3ec018d..105b355 100644 --- a/lib/preferences.dart +++ b/lib/preferences.dart @@ -7,6 +7,7 @@ import 'package:shared_preferences/shared_preferences.dart'; import 'package:shared_preferences_android/shared_preferences_android.dart'; class Preferences { + static Future? _initFuture; static late SharedPreferencesWithCache instance; static const String id = 'id'; @@ -27,6 +28,11 @@ class Preferences { static const String lastHeading = 'lastHeading'; static Future init() async { + _initFuture ??= _createInstance(); + await _initFuture; + } + + static Future _createInstance() async { instance = await SharedPreferencesWithCache.create( sharedPreferencesOptions: Platform.isAndroid ? SharedPreferencesAsyncAndroidOptions(backend: SharedPreferencesAndroidBackendLibrary.SharedPreferences)