cxorbi_flutter 1.8.3
cxorbi_flutter: ^1.8.3 copied to clipboard
Cxorbi analytics for Flutter: session replay, heatmaps, screens, gestures, funnels, performance, error capture and in-app surveys for iOS and Android.
Changelog #
1.8.3 #
- Fixed server-authorized viewport reference captures being rejected because their canvas kind and completeness metadata were missing.
1.8.2 #
- Enabled server-authorized analyst reference-capture links by default.
1.8.1 #
- Fixed Android long-screen reference capture for devices with fractional logical viewport widths.
- Improved stable telemetry canonicalization for offline delivery.
1.8.0 #
- Added opt-in, policy-controlled capture for high-volume mobile analytics and replay, with durable on-device delivery.
1.7.1 #
- Improved high-activity interaction upload batching by keeping unrelated telemetry streams on their normal flush cadence.
1.7.0 #
- Improved swipe capture and upload reliability during high-activity sessions.
- Added a bounded upload flush API for controlled shutdowns and test automation.
1.6.2 #
- Improved mobile session replay and heatmap capture reliability.
- Fixed gesture attribution and scrolling-screen rendering.
- Improved background delivery and runtime performance.
1.6.1 #
Documentation and packaging only — no code, API or behaviour changes.
- The Flutter Agent Skill now ships. "AI agent setup" in the README
described
skills/cxorbi_flutter-integrate, but the directory was excluded from the published archive, soskills getfound nothing. It is included from this release. - README: the pre-release checklist and dashboard-setup links now point at the hosted documentation instead of paths that are not part of the package, and the integration-verification step gives console output you can actually check.
- Example app: run instructions now target the public API rather than a local development server, and the sample events and user properties are generic instead of modelled on one vertical.
- Source comments were edited for clarity throughout. No behaviour depends on them.
1.6.0 #
Breaking — removed from the public API. All three were reachable from a
package:cxorbi_flutter/cxorbi_flutter.dart import, so upgrading from 1.5.x may
require a code change.
StartConfigis gone. BuildCxorbiConfigdirectly:Cxorbi.init(CxorbiConfig(apiKey: '<your organization API key>')). The same key works for every platform and feature.CxorbiConfig.ingestKeyis gone. A second credential was never needed —apiKeyaccepts either an organization key or ads_source token. Migration: delete theingestKey:argument. If the value you were passing to it was ads_source token, move that token intoapiKey— deleting it outright will attribute your traffic to the wrong project, and neither side reports an error when that happens.package:cxorbi_flutter/csq.dartis gone. It was a one-line re-export of the main barrel. Importpackage:cxorbi_flutter/cxorbi_flutter.dart.
Masking and gesture blocking are now separate controls. CxorbiMask redacts
what a subtree shows — that is unchanged. It does not stop the interaction
being counted, so the region keeps its tap heatmap, its rage-tap detection and
any funnel step built on it. The tap simply arrives unlabelled, because the label
was already redacted on the device.
Masking the content does not hide where the finger landed. When the coordinate itself is the meaningful value — a fixed-layout keypad, a signature or pattern grid, or a stably-ordered list where row position reveals the choice — opt into blocking as well:
CxorbiMask(
config: CxorbiMaskingConfig.maskAllAndBlockGestures,
child: PinPad(),
)
That drops taps, swipes, long-presses, pinches and scrolls inside the subtree. Scroll is newly covered — a scoped block previously let a blocked picker still report its selected offset.
- New:
CxorbiMaskingConfig.blockGestures, and the ready-madeCxorbiMaskingConfig.maskAllAndBlockGesturespreset. - Deprecated:
CxorbiMaskingConfig.maskInteractions— renamed toblockGestures, because the flag deletes events rather than masking them. The old argument still works and resolves to the new field; it is scheduled for removal in 2.0.0. - What you may notice: if you wrapped a region in
CxorbiMaskpurely to redact its text, that region's tap and gesture volume returns to your dashboards on this release.
Fixed. Mobile heatmaps could be built from incomplete screen layout data. Layouts are now recorded with full session attribution. No API change and nothing to configure; it applies to sessions captured on this release onward.
Added.
CxorbiConfig.captureErrorsBeforeFirstScreen(defaultfalse) — capture errors from consent onward rather than from the first screenview. Off by default because enabling it changes the error volume and crash-free rate you see, which should be a deliberate change with a date attached.CxorbiConfig.inAppCaptureDeepLinkEnabled(defaultfalse) — opt in to the dashboard's screenshot-capture deep link. A URL scheme is unauthenticated input, so enable this in the QA build that runs the capture flow, not in release builds. CallingCxorbi.enableSnapshotCapture()from your own code is unaffected.CxorbiConfig.resetVisitorIdOnStorageError(defaultfalse), and the matchingAnalyticsOptionsfield — lets the secure store recover when an Android backup-restore leaves it permanently unreadable, which otherwise mints a new visitor on every launch. Off by default because it clears the stored id on any read error, including transient ones. Apple platforms are unaffected.kDefaultBackgroundCheckpointGraceMs(5s) — grace window for the graceful-background checkpoint.
1.5.9 #
- Enhanced Nudge styling standardization for more consistent in-app presentation.
1.5.8 #
- Enhanced screen handling for more robust guided heatmap screenshot capture.
1.5.7 #
- Simplified screenshot capture for Flutter Android apps to a single Capture button that automatically selects a long or visible-screen screenshot.
1.5.6 #
- Improved mobile screenshot capture controls and visual capture fidelity for Flutter apps.
1.5.5 #
- Improved image fidelity handling for Flutter apps.
1.5.4 #
- Improved mobile analytics reliability and delivery timing.
- Enhanced Flutter integration support for guided product workflows.
- Refined mobile experience capture consistency.
1.5.3 #
- Improved mobile analytics continuity.
- Enhanced mobile interaction coverage.
- Refined mobile experience analysis stability.
1.5.2 #
- Improved survey attribution behavior in Flutter apps.
1.5.1 #
- Improved event-triggered survey display reliability.
- Improved survey branding behavior.
- Updated setup documentation.
1.5.0 #
- Enhanced privacy masking for Flutter apps.
- Improved replay playback consistency.
1.4.0 #
- Added mobile performance and diagnostic insights.
- Added rollout controls for advanced diagnostics.
1.3.2 #
- Refined survey rating layout and tap targets.
- Improved compact survey presentation.
1.3.1 #
- Improved short-survey layout and respondent experience.
- Streamlined single-question survey presentation.
1.3.0 #
- Refined mobile survey navigation and submission flow.
- Improved NPS and post-submit survey presentation.
- Enhanced survey card spacing and visual polish.
1.2.2 #
- Improved mobile survey replay coverage.
- Added survey branding presentation updates.
- Refined survey button styling.
1.2.1 #
- Improved mobile replay delivery defaults.
- Updated public SDK documentation.
1.2.0 #
- Enhanced durable mobile replay delivery.
- Improved background delivery behavior for mobile apps.
1.1.0 #
- Added richer mobile survey display modes.
- Improved survey launcher behavior and design controls.
- Expanded customization support for survey presentation.
1.0.0 #
- Enhanced mobile replay durability and reliability.
- Improved offline handling and SDK observability.
0.3.9 #
- Added configurable mobile visual asset capture.
- Improved centralized capture controls.
0.3.8 #
- Improved survey and feedback privacy defaults in replay.
- Refined dashboard replay activity presentation.
0.3.7 #
- Improved survey and feedback lifecycle reliability.
- Enhanced durable survey response handling.
0.3.6 #
- Updated iOS package metadata.
0.3.5 #
- Improved project-level masking behavior for mobile replay.
- Added expanded replay capture controls.
- Improved survey visibility lifecycle tracking.
0.3.4 #
- Added richer mobile device context.
- Improved survey lifecycle and delivery reliability.
- Added push and deep-link analytics coverage.
0.3.3 #
- Improved survey presentation frequency handling.
- Updated SDK version reporting.
0.3.2 #
- Public package cleanup.
0.3.1 #
- Added in-app surveys and feedback for Flutter apps.
- Added survey targeting, lifecycle callbacks, and feedback controls.
0.2.0 #
- Added Flutter analytics, replay, funnels, performance, and error capture.
0.1.0 #
- Initial release.