umami_flutter 0.2.0 copy "umami_flutter: ^0.2.0" to clipboard
umami_flutter: ^0.2.0 copied to clipboard

A lightweight Flutter package for Umami analytics with non-blocking initialization and automatic device info collection.

0.2.0 #

  • Added recordFirstOpen parameter to init() — automatically sends a first_open event when the app is opened for the first time on a device.
  • Added DeviceIdService.isFirstLaunch — indicates whether the current session is the device's first launch.
  • Note: On iOS/macOS, Keychain persists across reinstalls, and on Windows, secure storage also survives reinstalls, so first_open fires only once per device on these platforms. On Android, secure storage is cleared on uninstall, so reinstalling the app will trigger first_open again.

0.1.3 #

  • Widened dependency version constraints to reduce conflicts with host apps.

0.1.2 #

  • Upgraded device_info_plus from ^11.5.0 to ^12.3.0.
  • Upgraded flutter_secure_storage from ^9.2.4 to ^10.0.0.
  • Upgraded flutter_lints from ^5.0.0 to ^6.0.0.
  • Removed deprecated encryptedSharedPreferences parameter (auto-migrated by v10).
  • Updated README with Firebase Analytics comparison and contributing guide.

0.1.1 #

Bug Fixes #

  • Fixed init() — now recovers from failures and can be retried (was permanently broken after a single failure).
  • Fixed double-init() call crash — second call is now safely ignored.
  • Fixed HTTP client leak — reusing a single IOClient instead of creating a new one per event send.
  • Fixed repository and homepage URLs in pubspec.yaml.
  • Fixed version mismatch between pubspec.yaml and CHANGELOG.md.

New Features #

  • Added onError callback parameter to init() for monitoring analytics failures in production.
  • Added configurable userAgent parameter to init() to override the default browser User-Agent.
  • Added UmamiAnalytics.isInitialized getter to check initialization state.
  • Added UmamiAnalytics.reset() method for testing and re-initialization scenarios.
  • Exported DeviceIdService so consumers can access the persistent device ID independently.

Improvements #

  • Added platforms field to pubspec.yaml (Android, iOS, macOS, Windows — no web).
  • Upgraded uuid dependency from ^3.0.5 to ^4.0.0.
  • Added comprehensive dartdoc to all public API surfaces.
  • Added example/main.dart with full usage demo.
  • Added 15 unit tests (was previously empty).
  • Updated README.md with full API reference, init parameters table, and architecture overview.

0.1.0 #

  • Initial release.
  • Non-blocking init() with automatic device info collection.
  • trackScreen() and trackEvent() — fire-and-forget, safe to call before init completes.
  • Persistent device IDs via Keychain (iOS/macOS) and EncryptedSharedPreferences (Android).
  • Platform-specific User-Agent for accurate OS detection in Umami.
  • Multi-platform support: Android, iOS, macOS, Windows.
1
likes
160
points
289
downloads

Documentation

API reference

Publisher

verified publisherappsqueeze.com

Weekly Downloads

A lightweight Flutter package for Umami analytics with non-blocking initialization and automatic device info collection.

Homepage
Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

android_id, device_info_plus, flutter, flutter_secure_storage, http, uuid

More

Packages that depend on umami_flutter