7.15.0
Features
- Add support for
feedback
envelope header item type (#3687) - Add breadcrumb.origin field (#3727)
- Session Replay: Add options to selectively mask/unmask views captured in replay. The following options are available: (#3689)
android:tag="sentry-mask|sentry-unmask"
in XML orview.setTag("sentry-mask|sentry-unmask")
in code tags- if you already have a tag set for a view, you can set a tag by id:
<tag android:id="@id/sentry_privacy" android:value="mask|unmask"/>
in XML orview.setTag(io.sentry.android.replay.R.id.sentry_privacy, "mask|unmask")
in code
- if you already have a tag set for a view, you can set a tag by id:
view.sentryReplayMask()
orview.sentryReplayUnmask()
extension functions- mask/unmask
View
s of a certain type by adding fully-qualified classname to one of the listsoptions.experimental.sessionReplay.addMaskViewClass()
oroptions.experimental.sessionReplay.addUnmaskViewClass()
. Note, that all of the view subclasses/subtypes will be masked/unmasked as well- For example, (this is already a default behavior) to mask all
TextView
s and their subclasses (RadioButton
,EditText
, etc.):options.experimental.sessionReplay.addMaskViewClass("android.widget.TextView")
- If you're using code obfuscation, adjust your proguard-rules accordingly, so your custom view class name is not minified
- For example, (this is already a default behavior) to mask all
- Session Replay: Support Jetpack Compose masking (#3739)
- To selectively mask/unmask Composables, use
Modifier.sentryReplayMask()
andModifier.sentryReplayUnmask()
modifiers
- To selectively mask/unmask Composables, use
- Session Replay: Mask
WebView
,VideoView
andandroidx.media3.ui.PlayerView
by default (#3775)
Fixes
- Avoid stopping appStartProfiler after application creation (#3630)
- Session Replay: Correctly detect dominant color for
TextView
s with Spans (#3682) - Fix ensure Application Context is used even when SDK is initialized via Activity Context (#3669)
- Fix potential ANRs due to
Calendar.getInstance
usage in Breadcrumbs constructor (#3736) - Fix potential ANRs due to default integrations (#3778)
- Lazily initialize heavy
SentryOptions
members to avoid ANRs on app start (#3749)
Breaking changes:
options.experimental.sessionReplay.errorSampleRate
was renamed tooptions.experimental.sessionReplay.onErrorSampleRate
(#3637)- Manifest option
io.sentry.session-replay.error-sample-rate
was renamed toio.sentry.session-replay.on-error-sample-rate
(#3637) - Change
redactAllText
andredactAllImages
tomaskAllText
andmaskAllImages
(#3741)