luciq_flutter 19.8.0 copy "luciq_flutter: ^19.8.0" to clipboard
luciq_flutter: ^19.8.0 copied to clipboard

The official SDK for Luciq, the Agentic Observability Platform for Mobile. Use AI agents to resolve issues faster and empower your team to focus on building what matters.

Changelog #

19.8.0 #

Add #

  • comprehensive debug logging across all modules and performance-critical hot paths, ensuring the strict protection and redaction of SDK consumer PII.

Fixed #

  • Prevent PixelCopy crash on invalid surface during capture (#67).

Changed #

BREAKING CHANGES #

Errors thrown by native (Pigeon) host calls are now logged and swallowed by the SDK instead of being re-thrown into your app. This honors the SDK rule that no exception may escape into the embedding application. As a consequence, every public API that previously returned a value now returns its nullable equivalent — null signals that the underlying host call failed.

Affected public APIs:

API Before After
Luciq.getUserAttributes() Future<Map<String, String>> Future<Map<String, String>?>
Replies.hasChats() Future<bool> Future<bool?>
Replies.getUnreadRepliesCount() Future<int> Future<int?>
SessionReplay.getSessionReplayLink() Future<String> Future<String?>
Surveys.getAvailableSurveys() Future<List<String>> Future<List<String>?>
Surveys.hasRespondedToSurvey() Future<bool> Future<bool?>

Migration: coalesce with a sensible default or null-check before use, e.g.

final hasChats = (await Replies.hasChats()) ?? false;
final unread = (await Replies.getUnreadRepliesCount()) ?? 0;
final link = await SessionReplay.getSessionReplayLink();
if (link != null) { ... }

19.7.0 #

Added #

  • WebView Support: New APIs to monitor WebViews in your app, including page navigations, user interactions, and network requests issued from inside the WebView. Screenshots and session replays now capture WebView content alongside the rest of the UI.

    Enable WebView monitoring after Luciq.init:

    // Enable WebView monitoring (required for the APIs below).
    Luciq.setWebViewMonitoringEnabled(true);
    
    // Track taps and other user interactions inside WebViews.
    Luciq.setWebViewUserInteractionsTrackingEnabled(true);
    
    // Log network requests issued from WebViews.
    Luciq.setWebViewNetworkTrackingEnabled(true);
    

    All three APIs default to disabled. setWebViewMonitoringEnabled must be on for the user-interactions and network-tracking APIs to take effect.

Changed #

19.6.0 #

Added #

  • Add support for Screen Loading with react-navigation integration and manual reporting API.

Changed #

19.4.0 (April 8, 2026) #

Added #

  • Session Replay Screenshot Quality Control: New API to adjust the visual quality of captured screenshots.

    // Available quality options:
    // - ScreenshotQualityMode.normal (default) - 25% WebP compression, balanced size/quality
    // - ScreenshotQualityMode.high - 50% WebP compression, better clarity
    // - ScreenshotQualityMode.greyScale - 25% WebP compression, reduced color data
    SessionReplay.setScreenshotQualityMode(ScreenshotQualityMode.normal);
    
  • Video-like Session Replay (Experimental): Capture screenshots based on user interactions or at fixed intervals for a video-like playback experience.

    Warning: Video-like Session Replay may capture sensitive UI unmasked in some cases. USE AT YOUR OWN DISCRETION TO PREVENT PII LEAKAGE. Opt in ONLY after validating masking/privacy in your app.

    // Set capturing mode
    // - ScreenshotCapturingMode.navigation (default) - Captures on screen changes
    // - ScreenshotCapturingMode.interaction - Captures on user interactions
    // - ScreenshotCapturingMode.frequency - Captures at fixed intervals
    SessionReplay.setScreenshotCapturingMode(ScreenshotCapturingMode.frequency);
    
    // Set screenshot capture interval (only applies to ScreenshotCapturingMode.frequency)
    // Value in milliseconds. Minimum: 500ms, Default: 1000ms
    SessionReplay.setScreenshotCaptureInterval(500);
    

    Note: On Android low-performance devices, only ScreenshotCapturingMode.navigation mode is available.

  • Custom Spans: New feature to manually instrument code paths for performance tracking

    • APM.startCustomSpan(name) - Start a custom span and return a span object
    • CustomSpan.end() - End the span and report to SDK
    • APM.addCompletedCustomSpan(name, startDate, endDate) - Record a pre-completed span
    • Support for up to 100 concurrent spans
    • Comprehensive validation (name length, empty checks, timestamp validation)
    • Feature flag support to enable/disable custom spans

Changed #

19.3.0 (March 9, 2026) #

Changed #

19.2.2 (February 24, 2026) #

Added #

  • Allow identification with nullable email. (#40).

Changed #

19.2.1 (January 28, 2026) #

Added #

  • Add new UserConsentActionType - noAutomaticBugGrouping.

Changed #

19.1.0 (January 5, 2026) #

Changed #

19.0.0 (December 16, 2025) #

Added #

  • Add support for Screen Rendering (#22)

Changed #

18.2.1 (November 26, 2025) #

Fixed #

  • Guard LuciqNavigatorObserver pending-step removal to eliminate the race that could crash apps or produce incorrect screenshots during rapid route transitions. (#23)

18.2.0 (November 12, 2025) #

Added #

  • Make LuciqNavigatorObserver screen report delay configurable. (#17)

Changed #

18.0.1 (October 27, 2025) #

Added #

  • Add support for proactive bug-reporting (#4).

  • Add support enable/disable the automatic masking of sensitive information in network logs. (#6).

  • Add support NDK Crash. (#2).

Changed #

18.0.0 (September 24, 2025) #

  • SDK rebranded from Luciq to Luciq.
2
likes
130
points
5.42k
downloads

Documentation

Documentation
API reference

Publisher

unverified uploader

Weekly Downloads

The official SDK for Luciq, the Agentic Observability Platform for Mobile. Use AI agents to resolve issues faster and empower your team to focus on building what matters.

Homepage
Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

flutter, meta, stack_trace

More

Packages that depend on luciq_flutter

Packages that implement luciq_flutter