For the complete documentation index, see llms.txt. This page is also available as Markdown.

User Steps Privacy API

What this is?

A new SDK API lets you disable view content capture in User Steps and Repro Steps while keeping the journey signal (gesture, view type, screen name, timestamp).

  • Default is unchanged capture stays on unless you explicitly call the API.

  • Screenshots are not affected Session Replay and bug report screenshots continue to behave as before. Use the screenshot-masking APIs for those.

  • Events still fire every tap, scroll, switch, slider change is recorded. Only the view's visible text is redacted.


How to enable it?

Android

Luciq.setViewsContentCaptureEnabled(false);

iOS

Luciq.viewsContentCaptureEnabled = false

Call once at app startup. Runtime-toggleable flipping it back to true resumes content capture on subsequent events.

User Steps

Scenario
Before
After

Tap a button labeled "Home" with resource ID btn_home

Tap in "Home" of type "Button" in "MainActivity"

Tap in "btn_home" of type "Button" in "MainActivity"

Tap a button without a resource ID

Tap in "Home" of type "Button" in "MainActivity"

Tap in "Button" in "MainActivity"

Tap a TextView

Tap in "Welcome" of type "TextView" in "MainActivity"

Tap in "tv_welcome" of type "TextView" in "MainActivity"

Toggle a switch

Enable in "Notifications" of type "Switch"

Enable in "sw_notifications" of type "Switch"

Move a SeekBar

Move in "Volume" of type "SeekBar"

Move in "sb_volume" of type "SeekBar"

Scroll / swipe / pinch

unchanged

unchanged (no text captured today)

Repro Steps

Scenario
Before
After

Button with visible text only

the button "Login"

a button

Button with both text and contentDescription

the button "Login"

the button "<contentDescription>"

Button with contentDescription only

the button "Login"

the button "Login" (unchanged)

Button with icon only

icon bitmap captured

a button (icon dropped)

TextView with text only

the label "Welcome back"

a label

TextView with text + contentDescription

the label "Welcome back"

the button "<contentDescription>"

ImageView with contentDescription

the image "Profile"

the image "Profile" (unchanged)

Switch with text only

the switch "Notifications"

a switch

Switch with contentDescription

the switch "Notifications"

the switch "<contentDescription>" (unchanged)

SeekBar with label + progress

the slider "Volume" to 75

the slider "Volume" (progress dropped, label kept)

Tab with text

the button "Home"

a button

Tab with icon only

icon captured

a button (icon dropped)

Card / ViewGroup aggregating child labels

UI that contains "Home - Profile - Settings"

empty descriptor

Jetpack Compose

Scenario
Before
After

Button("Login") with testTag("loginBtn")

the Composable with text "Login" and tag {loginBtn}

the Composable with tag {loginBtn}

Button("Login") without a test tag

the Composable with text "Login"

a Composable

Slider at 0.75 with test tag

the Slider Composable with tag {vol} to 0.75

the Slider Composable with tag {vol}

Text("Welcome") with test tag

the Label Composable with text "Welcome" and tag {...}

the Label Composable with tag {...}

Before vs. After iOS

User Steps (UIKit)

Scenario
Before
After

Tap UIButton with title

Tap in "Home" of type "Button" in "MainVC"

Tap in Button in MainVC

Tap UILabel

Tap in "Welcome" of type "UILabel" in "MainVC"

Tap in UILabel in MainVC

Tap UIImageView with a11y label

Tap in "Profile" of type "UIImageView" in "MainVC"

Tap in UIImageView in MainVC

Toggle UISwitch

Enabled in "Notifications"…

Enabled in UISwitch…

Drag UISlider

Moved "Volume"…

Moved UISlider… (value dropped)

User Steps (SwiftUI)

Scenario
Before
After

Button("Home")

Tap on Home

Tap on a button

Text("Welcome")

Tap on Welcome

Tap on a text

Slider editing changed

Changed Volume to 0.75

Changed a slider

Customer-explicit .setMessage("...")

unchanged

unchanged your explicit messages are never overwritten

Repro Steps

Scenario
Before
After

UIButton with title

the button "Login"

a button

UIButton with icon only

icon captured

a button (icon dropped)

UILabel with text

the text "Welcome"

a text

UIImageView with a11y label

the image "Profile"

an image

UITextField with placeholder

placeholder text

UI element

UISwitch with a11y label

the switch "Notifications"

a switch

UISlider

the slider "Volume" to 0.75

a slider (label + progress dropped)

Bar button / tab-bar button with label

the button "Done"

the button

Container with child labels

UI that contains "X - Y - Z"

UI element


Last updated