Repository navigation
Grovs Flutter SDK 3.0.0 aligns the plugin with the native Grovs 3.0 SDKs and adds analytics, consent controls, and clipboard deferred deep linking
New features
- Custom events with track().
- Manual screen views with trackScreenView() and automatic screen tracking through Grovs.navigatorObserver.
- Global tags and screen aliases.
- Runtime consent controls through setSDK(bool), with platform settings to start disabled.
- Clipboard deferred deep linking, configurable domains, and per-link clipboard options.
- An onError stream for authentication, network, event delivery, and link generation errors on iOS.
Fixes
- logCustomPurchase() now forwards startDate on both platforms.
- Deep links are buffered until Dart subscribes.
- Improved event handling across multiple Flutter engines.
- Improved cleanup of listeners, subscriptions, and pending Android operations when an engine detaches.
Upgrade notes
- Android now requires API 24 or later. iOS requires 13.0 or later.
- Native automatic screen tracking is disabled. Add Grovs.navigatorObserver to your app’s navigator
observers to track Flutter screens automatically. - The SDK starts enabled by default. For consent flows, set GrovsEnabled or grovs_enabled to false, then
call setSDK(true) after consent. Your app must persist the user’s choice. - Clipboard lookup may trigger the iOS system paste notice.
Known limitations
- onError currently emits events only on iOS.
- On iOS, a deep link lookup already in progress may still deliver its result if consent is withdrawn and
granted again before the lookup completes.