Skip to content

Commit 67b81e7

Browse files
committed
Add await ref.watch(sharedPreferencesProvider.future) to prevent AsyncValue error during app startup
1 parent 80fdc7f commit 67b81e7

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

lib/src/routing/app_startup.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
33
import 'package:riverpod_annotation/riverpod_annotation.dart';
44
import 'package:starter_architecture_flutter_firebase/src/constants/app_sizes.dart';
55
import 'package:starter_architecture_flutter_firebase/src/features/onboarding/data/onboarding_repository.dart';
6+
import 'package:starter_architecture_flutter_firebase/src/utils/shared_preferences_provider.dart';
67

78
part 'app_startup.g.dart';
89

@@ -11,12 +12,14 @@ part 'app_startup.g.dart';
1112
Future<void> appStartup(Ref ref) async {
1213
ref.onDispose(() {
1314
// ensure dependent providers are disposed as well
15+
ref.invalidate(sharedPreferencesProvider);
1416
ref.invalidate(onboardingRepositoryProvider);
1517
});
1618
// Uncomment this to test that URL-based navigation and deep linking works
1719
// even when there's a delay in the app startup logic
1820
// await Future.delayed(Duration(seconds: 1));
1921
// await for all initialization code to be complete before returning
22+
await ref.watch(sharedPreferencesProvider.future);
2023
await ref.watch(onboardingRepositoryProvider.future);
2124
}
2225

0 commit comments

Comments
 (0)