AnalyticsService class abstract

Event and user-property reporting.

bifrosted defines the interface and ships no SDK — the app implements this against Firebase Analytics, PostHog, Amplitude, or whatever it uses.

Register it app-wide in AppBinding with Bind.put(..., permanent: true).

Never pass PII. Log that a name was entered, never the name. Event parameters end up in a third-party console, in exports, and often in logs. See ARCHITECTURE.md → Data & Privacy.

This is the one service a widget may call directly, and only for fire-and-forget logging — see ARCHITECTURE.md → Widget Rules.

Implementers

Constructors

AnalyticsService()

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

log(String event, [Map<String, Object?> params]) → void
Records that event happened.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
setUserId(String? id) → void
Associates subsequent events with id, or clears it on sign-out.
setUserProperty(String name, String? value) → void
Sets a durable property on the current user (plan tier, cohort, locale).
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited