diff --git a/lib/error_reporting.dart b/lib/error_reporting.dart index 5c354150..d7eaa922 100644 --- a/lib/error_reporting.dart +++ b/lib/error_reporting.dart @@ -62,6 +62,9 @@ Future get _environmentEvent async { build: packageInfo.buildNumber, ), ), + userContext: User( + id: Settings.instance.pseudoId, + ), ); return environment; } diff --git a/lib/settings.dart b/lib/settings.dart index 115ae786..92220541 100644 --- a/lib/settings.dart +++ b/lib/settings.dart @@ -3,6 +3,8 @@ import 'package:gitjournal/screens/note_editor.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:gitjournal/core/sorting_mode.dart'; +import 'package:uuid/uuid.dart'; + class Settings { static List changeObservers = []; @@ -34,6 +36,9 @@ class Settings { bool proMode = false; + String _pseudoId; + String get pseudoId => _pseudoId; + void load(SharedPreferences pref) { gitAuthor = pref.getString("gitAuthor") ?? gitAuthor; gitAuthorEmail = pref.getString("gitAuthorEmail") ?? gitAuthorEmail; @@ -66,6 +71,12 @@ class Settings { version = pref.getInt("settingsVersion") ?? version; proMode = pref.getBool("proMode") ?? proMode; + + _pseudoId = pref.getString("pseudoId"); + if (_pseudoId == null) { + _pseudoId = Uuid().v4(); + pref.setString("pseudoId", _pseudoId); + } } Future save() async { @@ -112,6 +123,7 @@ class Settings { "folderViewHeaderType": folderViewHeaderType, "version": version, "proMode": proMode, + 'pseudoId': pseudoId, }; }