RybbitFlutter class
The main entry point for the Rybbit Flutter SDK.
This class provides a singleton interface for tracking analytics events, pageviews, and user interactions in your Flutter application.
Example usage:
// Initialize the SDK
await RybbitFlutter.instance.initialize(RybbitConfig(
siteId: 'your-site-id',
// Only if your server requires one, and only a key scoped to
// writing tracking data:
// apiKey: 'your-api-key',
));
// Track a pageview
await RybbitFlutter.instance.trackPageView(pathname: '/home');
// Track a custom event
await RybbitFlutter.instance.trackEvent('button_clicked',
properties: {'button_id': 'header_cta'});
// Track an error
await RybbitFlutter.instance.trackError('NetworkError', 'Failed to load data',
stackTrace: stackTrace.toString(), fileName: 'api_service.dart');
// Identify a user with traits
await RybbitFlutter.instance.identify('user-123',
traits: {'name': 'John', 'plan': 'pro'});
- Mixed-in types
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- isInitialized → bool
-
Returns true if the SDK has been initialized.
no setter
-
routeObserver
→ RouteObserver<
PageRoute> -
Gets a route observer for automatic screen tracking.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- userId → String?
-
Gets the currently associated user ID, if any.
no setter
Methods
-
clearUserId(
) → void - Clears the current user ID association.
-
didChangeAccessibilityFeatures(
) → void -
Called when the system changes the set of currently active accessibility
features.
inherited
-
didChangeAppLifecycleState(
AppLifecycleState state) → void -
Called when the system puts the app in the background or returns
the app to the foreground.
override
-
didChangeLocales(
List< Locale> ? locales) → void -
Called when the system tells the app that the user's locale has
changed. For example, if the user changes the system language
settings.
inherited
-
didChangeMetrics(
) → void -
Called when the application's dimensions change. For example,
when a phone is rotated.
inherited
-
didChangePlatformBrightness(
) → void -
Called when the platform brightness changes.
inherited
-
didChangeTextScaleFactor(
) → void -
Called when the platform's text scale factor changes.
inherited
-
didChangeViewFocus(
ViewFocusEvent event) → void -
Called whenever the PlatformDispatcher receives a notification that the
focus state on a view has changed.
inherited
-
didHaveMemoryPressure(
) → void -
Called when the system is running low on memory.
inherited
-
didPopRoute(
) → Future< bool> -
Called when the system tells the app to pop the current route, such as
after a system back button press or back gesture.
inherited
-
didPushRoute(
String route) → Future< bool> -
Called when the host tells the application to push a new route onto the
navigator.
inherited
-
didPushRouteInformation(
RouteInformation routeInformation) → Future< bool> -
Called when the host tells the application to push a new
RouteInformation and a restoration state onto the router.
inherited
-
didRequestAppExit(
) → Future< AppExitResponse> -
Called when a request is received from the system to exit the application.
inherited
-
dispose(
) → void - Disposes of the SDK and cleans up resources.
-
handleCancelBackGesture(
) → void -
Called when a predictive back gesture is canceled, indicating that no
navigation should occur.
inherited
-
handleCommitBackGesture(
) → void -
Called when a predictive back gesture is finished successfully, indicating
that the current route should be popped.
inherited
-
handleStartBackGesture(
PredictiveBackEvent backEvent) → bool -
Called at the start of a predictive back gesture.
inherited
-
handleStatusBarTap(
) → void -
Called when the user taps the status bar on iOS, to scroll a scroll
view to the top.
inherited
-
handleUpdateBackGestureProgress(
PredictiveBackEvent backEvent) → void -
Called when a predictive back gesture moves.
inherited
-
identify(
String userId, {Map< String, dynamic> ? traits}) → Future<void> - Associates a user ID with future tracking events and sends an identify call to the Rybbit server.
-
initialize(
RybbitConfig config) → Future< void> - Initializes the Rybbit SDK with the provided configuration.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
setTraits(
Map< String, dynamic> traits) → Future<void> - Updates the traits (custom properties) for the current identified user without creating a new alias.
-
toString(
) → String -
A string representation of this object.
inherited
-
trackError(
String errorName, String message, {String? stackTrace, String? fileName, int? lineNumber, int? columnNumber, String? pathname, String? pageTitle}) → Future< void> - Tracks an error event with context and stack trace.
-
trackEvent(
String eventName, {Map< String, dynamic> ? properties, String? pathname, String? pageTitle}) → Future<void> - Tracks a custom event.
-
trackOutboundLink(
String url, {String? text, String? pathname}) → Future< void> - Tracks an outbound link click.
-
trackPageView(
{required String pathname, String? pageTitle, String? referrer, Map< String, String> ? queryParams}) → Future<void> - Tracks a pageview event.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
- instance → RybbitFlutter
-
Gets the singleton instance of RybbitFlutter.
no setter