Setup Session Replay
Record and replay user sessions from your KMP app. Covers enabling replay, what gets captured, capturing mode, screenshot quality, and upload control.
Session Replay records user sessions for replay in the Luciq dashboard. You can enable/disable it, control what is captured (network logs, Luciq logs, user steps), set capturing mode and screenshot quality, and control when replays are uploaded.
Support Tools Integration – Using session replay with support tools
Enable/disable
SessionReplayKmp.setEnabled(true)What is captured
SessionReplayKmp.setNetworkLogsEnabled(true)
SessionReplayKmp.setLuciqLogsEnabled(true)
SessionReplayKmp.setUserStepsEnabled(true)Session replay link
Get the link to the current session replay (e.g. to share with support):
scope.launch {
SessionReplayKmp.getSessionReplayLink().collect { url ->
url?.let { println(it) }
}
}When to upload (sync predicate)
Upload only sessions that meet your criteria. The predicate receives SessionMetadata with fields such as: appVersion, os, device, sessionDurationInSeconds, networkLogs, launchType, launchDuration, bugsCount, fatalCrashCount, oomCrashCount, hasLinkToAppReview. Use them to decide whether to upload (e.g. only when there was a crash or bugs):
Capturing mode
CapturingMode.Navigation
Screenshots when navigating between screens (default, lowest overhead)
CapturingMode.Interactions
Screenshots on navigation and user interactions
CapturingMode.Frequency
Screenshots at a fixed interval (video-like) plus navigation
Call before SDK init when possible.
Screenshot quality
ScreenshotQuality.High
50% WebP, best quality
ScreenshotQuality.Normal
25% WebP, default
ScreenshotQuality.Greyscale
Grayscale + 25% WebP, most efficient
Capture interval (frequency mode)
When using CapturingMode.Frequency, set the interval in milliseconds (min 500, default 1000):
Last updated