improve Firebase integration across Crashlytics, Analytics, and Performance
- Fix cold-start privacy bug: apply persisted collection preference on launch - Disable Firebase collection in debug builds to avoid polluting prod data - Add Crashlytics custom keys (is_logged_in, channel), user identifier, and WebSocket reconnection breadcrumbs for actionable crash reports - Record non-fatal errors for server failures, WebSocket errors, and global asset fetch failures (skip timeouts/network errors to avoid noise) - Update is_logged_in key and user identifier on login/logout transitions - Log auth reconnection exhaustion before forced logout - Add FirebaseAnalyticsObserver with named routes for automatic screen tracking - Add static routeName constants to avoid duplicated string literals - Add Firebase Performance Dio interceptor for automatic HTTP request tracing Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
f07fe621bc
commit
6ede000c66
21 changed files with 191 additions and 41 deletions
|
|
@ -44,7 +44,10 @@ class _HomeState extends State<Home> {
|
|||
|
||||
Navigator.push(
|
||||
context,
|
||||
MaterialPageRoute(builder: (context) => const ReleaseNotes()),
|
||||
MaterialPageRoute(
|
||||
settings: const RouteSettings(name: ReleaseNotes.routeName),
|
||||
builder: (context) => const ReleaseNotes(),
|
||||
),
|
||||
).then((_) => prefs.setString('last_shown_version', currentVersion));
|
||||
}
|
||||
}
|
||||
|
|
@ -121,6 +124,7 @@ class _HomeState extends State<Home> {
|
|||
onPressed: () => Navigator.push(
|
||||
context,
|
||||
MaterialPageRoute(
|
||||
settings: const RouteSettings(name: Settings.routeName),
|
||||
builder: (context) => Settings(
|
||||
settingsStore: context.read<SettingsStore>(),
|
||||
),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue