Release notes (7.x Beta)
Beta
Bugsee Android SDK 7.x is currently in beta. APIs, options, and the Gradle plugin contract may still change before the stable release. For production workloads, consider staying on the 6.x line. See the migration guide when planning your upgrade.
7.0.0-beta3
- Perf: Optimize cold start by deferring non-critical initialization off the startup path.
- Feat: Support predictive back gesture in the feedback activity.
- Fix: Preserve capture and detection runtime annotations through ProGuard/R8 so provider discovery keeps working in minified builds.
- Test: Add runtime annotation integrity checks and release AAR verification.
7.0.0-beta2
- Fix: Update ProGuard rules to prevent stripping of capture data and exporter constructors.
- Fix: Preserve LZ4 and XXHash JNI-bound classes in ProGuard rules.
- Feat: Enable R8 minification and self-obfuscation across all extension modules.
- Feat: Publish all SDK modules to Maven Central as
bugsee-android-*artifacts (core, feedback, okhttp, ktor-2, ktor-3, cronet, compose). - Feat: Public API surface validation and tracking; API surface generation now filters R8-obfuscated classes.
- Build: Migrate library API validation to the Kotlin Binary Compatibility Validator.
- Build: Bugsee Android Gradle plugin updated to 4.0.0-beta1 (required for 7.x).
- Build: Configure Javadoc and empty-sources JARs for Maven publishing.
- Test: Add fuzz tests for capture data entries, core utilities, native components, and the screen-capture bitmap cache.
- Refactor: Detection contracts refined and stabilized for the public API surface.
7.0.0-beta1
First public beta of the 7.x line. A ground-up rewrite of every major subsystem. Highlights:
- Feat: Multi-display and foldable-device support — each display is tracked independently and composited into the report.
- Feat: New screen capture engine with multiple strategies selected per device, Android version, and display; encoding is decoupled from the capture thread.
- Feat: Modular detection subsystem with independent providers — Java/Kotlin crash, native (NDK) crash via Breakpad, hang, abnormal exit (ANR/OOM/user-stop/package-update), and main-thread misuse.
- Feat: Expanded system events (9 types) and system traces (23 types) — display state, thermal, connectivity, FPS, memory, power, orientation, UI mode, and more.
- Feat: Breadcrumb capture (beta) — app, UI, network, and system breadcrumb sources; opt-in via
CaptureBreadcrumbs. - Feat: Modular architecture — core library plus separate extension modules for feedback and HTTP clients (OkHttp, Ktor 2, Ktor 3, Cronet, Jetpack Compose). Extensions auto-register at startup via their own
ContentProvider. - Feat: Automatic initialization — add the
com.bugsee.app-tokenmanifestmeta-dataentry and the SDK launches itself; programmaticBugsee.launch(...)is still available with async completion callbacks. - Feat: Application Performance Monitoring — built-in providers for UI load/display, cold-start, HTTP, database, and file I/O; custom
Transaction/SpanAPIs viaBugsee.startTransaction(...)andBugsee.startSpan(...). Context propagates across threads. - Feat: Bugsee Gradle plugin (4.0.0-beta1) is required — provides logcat, OkHttp,
HttpEngine, Compose touch, native-thread, and APM bytecode instrumentation, mapping/NDK-symbol upload, and extension auto-install. - Breaking:
LaunchOptionsremoved; pass aMap<String, Serializable>keyed byOptions.*constants or configure via manifestmeta-data. - Breaking: Network-client helpers (
addNetworkLoggingToOkHttpBuilder,addNetworkLoggingToKtorHttpClient,addNetworkLoggingToPicassoDownloader,newOkHttpWrappedWebSocket) removed in favour of extension modules. OkHttp 2 is no longer supported. - Breaking: Feedback moved to
bugsee-android-feedback; retrieve viaBugsee.ext(Feedback.class). - Breaking: Option keys renamed across detection, capture, reporting-UI, and trigger groups.
IssueSeverity.Criticalis removed. - Breaking:
Bugsee.getDeviceId(),pause(),resume(),isResumed(),setEmail(), andgetEmail()removed. UsesetUserIdentifier()/getUserIdentifier()/clearUserIdentifier(). - Breaking:
ExtendedReport/ExtendedReportCreatedListener/setReportFieldsFilter/setReportAttachmentsProviderreplaced byReport+ReportHandler.createReport(...)replaced byshowReportDialog(...). - Breaking:
BugseeAppearancepublic-field data class replaced by the typedAppearancecontract withsetColor/setString.
See the migration guide for a complete change-by-change walkthrough.