Skip to content

Commit ffc2a29

Browse files
mariedmrtrieu
andauthored
Session Replay iOS: Update Image privacy section (#30823)
* Session Replay iOS: Update Image privacy section * Apply CR comment: add link ref at bottom * Apply CR suggestion Co-authored-by: Rosa Trieu <[email protected]> * Update content/en/real_user_monitoring/session_replay/mobile/troubleshooting.md Co-authored-by: Rosa Trieu <[email protected]> --------- Co-authored-by: Rosa Trieu <[email protected]>
1 parent a75f811 commit ffc2a29

File tree

2 files changed

+17
-5
lines changed

2 files changed

+17
-5
lines changed

content/en/real_user_monitoring/session_replay/mobile/privacy_options.mdoc.md

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -237,19 +237,23 @@ SessionReplay.enable(config)
237237
<!-- end React Native -->
238238

239239
#### Mask content images
240-
You can manage content masking while still showing system images.
240+
You can manage content masking while still allowing system or bundled images to be visible.
241241

242242
<!-- iOS and React Native -->
243243
{% if or(equals($platform, "ios"), equals($platform, "react_native")) %}
244-
Select the `mask_non_bundled_only` setting, which replaces any image that is not part of the system with a "Content Image" placeholder.
244+
Use the `maskNonBundledOnly` setting to replace non-bundled images with a "Content Image" placeholder in the replay.
245+
246+
- In UIKit, the SDK can determine whether an image is bundled and can mask it accordingly.
247+
- In SwiftUI, this determination isn't possible. Instead, the SDK uses a heuristic: if an image exceeds 100×100 points, it is assumed to be non-bundled and is masked.
248+
245249
{% /if %}
246250

247251
<!-- Android -->
248252
{% if equals($platform, "android") %}
249253
Select the `mask_large_only` setting, which replaces images with dimensions that exceed 100x100dp with a "Content Image" placeholder.
250-
{% /if %}
251254

252255
**Note**: These dimensions refer to the drawable resource, not the view's size.
256+
{% /if %}
253257

254258
<!-- Android -->
255259
{% if equals($platform, "android") %}

content/en/real_user_monitoring/session_replay/mobile/troubleshooting.md

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,15 @@ Mobile Session Replay only supports native frameworks. Within these frameworks,
3131
- Advanced text styling
3232

3333
### Images do not render properly
34-
Depending on the SDK configuration of Mobile Session Replay, images may not always be displayed.
35-
If privacy settings allow for it, Mobile Session Replay only captures Android images up to 100x100dp and iOS bundled images. All other images are replaced by a placeholder indicating the image size in the UI.
34+
Depending on the SDK configuration of Mobile Session Replay, images may not always be displayed.
35+
36+
Image visibility depends on your SDK privacy configuration:
37+
- On iOS, if `maskNonBundledOnly` is enabled, only bundled images with UIKit and images up to 100x100 pts on SwiftUI are captured.
38+
- On Android, if `mask_large_only` is used, only images up to 100x100dp are captured.
39+
40+
All other images are replaced by a "Content Image" placeholder in the UI.
41+
42+
Learn more about [image privacy settings][1].
3643

3744
Images follow a separate processing pipeline, which may introduce a small delay between uploading a replay and the image being available for rendering in the web player.
3845
In this case, wait a few minutes and then reload the replay.
@@ -58,3 +65,4 @@ At any time during the lifetime of the host app, it's possible to change the tra
5865
## Further reading
5966

6067
{{< partial name="whats-next/whats-next.html" >}}
68+
[1]: /real_user_monitoring/session_replay/mobile/privacy_options/?platform=ios&tab=as-wrappers#image-masking

0 commit comments

Comments
 (0)