Features
-
Add
Sentry.extendAppStart(),Sentry.finishExtendedAppStart(), andSentry.getExtendedAppStartSpan()to extend the app start measurement past the first frame for extra launch-time work on Android (#5604)- Requires standalone app start tracing (
options.isEnableStandaloneAppStartTracing). CallextendAppStart()inApplication.onCreateafter SDK init andfinishExtendedAppStart()when done:
Sentry.extendAppStart() // Optionally, retrieve the extended app start span to attach your own child spans val child = Sentry.getExtendedAppStartSpan()?.startChild("preload", "Preload resources") // ... extra launch-time work ... child?.finish() Sentry.finishExtendedAppStart()
- Requires standalone app start tracing (
-
Add
trace_metric_bytedata category and record byte-level client reports when trace metrics are discarded (#5626) -
Support the
io.sentry.tombstone.report-historicalmanifest option to enable historical tombstone reporting viaAndroidManifest.xml<meta-data>(#5683)
Fixes
- Fix
NoSuchMethodErrorwhen usingMath.floorDiv/Math.floorModon Android < 24 (#5743) - Fix main thread identification parsing for ApplicationExitInfo ANRs (#5733)
- Do not send threads without stacktraces for ApplicationExitInfo ANRs (#5733)
- Record byte-level client reports when event processors discard logs or trace metrics (#5718)
- Name the device-info caching thread
SentryDeviceInfoCacheso all threads spawned by the SDK are identifiable (#5684) - Apply byte-category rate limits to log and trace metric envelope items (#5716)
Performance
- Skip
Hintallocation inScope.addBreadcrumbwhen nobeforeBreadcrumbcallback is set (#5689) - Speed up scope persistence by detecting the Sentry executor thread via a marker instead of a
Thread.getName()name scan on every scope mutation (#5691) - Remove executor prewarm during SDK init (#5681)
- The single-threaded
SentryExecutorServicequeued the prewarm work ahead of the first useful task, so it could only delay init work, never speed it up; the thread and class loading it warmed are paid identically by the first real task submitted right after.
- The single-threaded