Changelog

Every release, what changed and why.

uxLens ships as an SDK per platform. Flutter is the only one published today, so that's what you'll see below, other platforms' release notes land on this same page as they ship.

v0.1.9Flutter SDK
  • Support capture-window throttling. When the backend accepts a session start but declines to record it (the session fell outside an active capture window, so its budget was reserved for the periods you flagged as important), the SDK now stops that session cleanly instead of retrying it forever.
v0.1.8Flutter SDK
  • Lower the default frame JPEG quality from 50 to 35 to reduce recording storage/bandwidth cost. Session frames are UI screenshots, not photographs, so they hold up visually at a meaningfully lower quality than a photo would.
v0.1.7Flutter SDK
  • Fix sessions that replayed as "No frame yet." A reused frame capturer wasn't resetting its delta-encoding baseline between session rotations, so a new session's first frame could be wrongly flagged identical to the previous session's last frame and never uploaded.
v0.1.6Flutter SDK
  • Harden WebView payment masking against hosted-field checkouts served through a cross-origin iframe from a gateway not in the built-in list. The suppression latch now survives fresh script injection, and payment UI is also detected from merchant-rendered label text ("Card number", "Security code", "Expiration") visible in the top document even when the fields themselves are unreachable.
v0.1.3Flutter SDK
  • WebView capture now fails closed: a WebView is suppressed from the moment it mounts until the masking detector has actually run and confirmed the page holds no payment UI or sensitive field, removing the brief window where a card form could be captured during page load.
v0.1.2Flutter SDK
  • Automatic payment-page protection with no integration step: UxLensWebView attaches a lightweight detector by itself, matching known payment gateways and card-shape input heuristics without taking over the host app's WebView delegate.
  • Opt-in strictCrossOriginIframes treats any sizeable cross-origin iframe as sensitive, for gateways not otherwise recognized.
v0.1.1Flutter SDK
  • Privacy fix: any focused iframe now latches capture suppression until the page navigates away, regardless of provider, so a filled card form on a payment gateway outside the built-in keyword list is never captured.
v0.1.0Flutter SDK
  • Widen the image package dependency range so host apps on packages still pinned to an older xml version can resolve. First 0.1.x release, chosen so host apps on ^0.1.0 receive future patch releases automatically.
v0.0.2Flutter SDK
  • One app launch is now one session: backgrounding pauses instead of ending it, and returning to the foreground resumes the same session.
  • Frames are JPEG-compressed on device before upload, cutting bandwidth and storage versus uploading lossless pixels.
  • WebView masking no longer triggers on hidden/off-screen honeypot fields, and only payment/auth iframes suppress capture stickily.
  • The ingestion endpoint is fixed to the hosted uxLens backend and is no longer configurable.
v0.0.1Flutter SDK
  • Initial release: masked frame capture, touch/gesture and navigation events, automatic password-field and keyword-based masking, WebView support with DOM-level masking of cross-origin payment iframes, crash/error reporting, rage-tap detection, configurable sampling and retention, and reliable batched upload with delta-encoding and retry/backoff.