Skip to content

Releases: bugsnag/bugsnag-android

v4.17.0

18 Jul 14:25
23f2b4d
Compare
Choose a tag to compare

This release modularizes bugsnag-android into 3 separate artifacts: for JVM (Core), NDK, and ANR error
detection. No change should be required to your integration in order to use this version - simply
add a compile-time dependency on either bugsnag-android or bugsnag-android-ndk as before.

If you do not wish to use the NDK/ANR artifacts, it is possible to exclude these via gradle. You
should also set detectNdkCrashes and detectAnrs to false on the Configuration object supplied
during Bugsnag.init().

implementation("com.bugsnag:bugsnag-android:$version") {
    exclude group: "com.bugsnag", module: "bugsnag-plugin-android-anr"
    exclude group: "com.bugsnag", module: "bugsnag-plugin-android-ndk"
}
  • Modularise bugsnag-android into Core, NDK, and ANR artifacts
    #522

v4.16.1

10 Jul 12:58
Compare
Choose a tag to compare

Bug fixes

  • Prevent overwrite of signal mask when installing ANR handler
    #520

v4.16.0

08 Jul 11:53
Compare
Choose a tag to compare

This release adds a compile-time dependency on the Kotlin standard library. This should not affect
the use of any API supplied by bugsnag-android.

  • Use NetworkCallback to monitor connectivity changes on newer API levels
    #501
  • Send minimal error report if cached file is corrupted/empty
    #500

Bug fixes

  • Fix abort() in native code when storing breadcrumbs with null values in
    metadata
    #510
  • Convert metadata to map when notifying the NDK observer
    #513

v4.15.0

10 Jun 12:36
464aee0
Compare
Choose a tag to compare

bugsnag-android now supports detecting and reporting C/C++ crashes without a separate library (previously bugsnag-android-ndk was required for native error reporting).

bugsnag-android and bugsnag-android-ndk have essentially been merged. The only difference is that in bugsnag-android-ndk, NDK crash detection is enabled by default. To enable it in bugsnag-android, the configuration option detectNdkCrashes should be set to true.

After the next major release bugsnag-android-ndk will no longer be published, so it is recommended that you migrate to the bugsnag-android artefact.

Enhancements

  • Improve ANR detection by using a signal handler to detect SIGQUIT
    events, removing dependence on "in foreground" calculations. This change
    should remove false positives. This change deprecates the configuration
    options setAnrThresholdMs/getAnrThresholdMs as they now have no effect and
    the underlying OS ANR threshold is used in all cases.
    #490

  • Add detectNdkCrashes configuration option to toggle whether C/C++ crashes
    are detected
    #491

  • Reduce AAR size #492

  • Make handledState.isUnhandled() publicly readable #496

v4.14.2

21 May 13:32
Compare
Choose a tag to compare

Enhancements

  • Disable ANR detection by default #484

v4.14.1

17 May 10:05
Compare
Choose a tag to compare
  • Remove RINGER_MODE_CHANGED action from broadcast receiver, which fixes a SecurityException thrown in Instant Apps
    #481

  • Reduce sensitivity of Foreground Detection, reducing potential ANR false positives
    #482

v4.14.0

07 May 12:18
9c34ccc
Compare
Choose a tag to compare

Enhancements

  • Alter In foreground calculation
    #466

  • Migrate version information to device.runtimeVersions
    #472

  • Add internal api for mutating session payload before sending
    #472

  • Resolve pre-existing Android Inspection violations
    #468

Bug fixes

  • [NDK] Fix possible null pointer dereference
  • [NDK] Fix possible memory leak if bugsnag-android-ndk fails to successfully
    parse a cached crash report
  • [NDK] Fix possible memory leak when using bugsnag_leave_breadcrumb() or
    bugsnag_notify()

v4.13.0

03 Apr 15:09
e537ee1
Compare
Choose a tag to compare

Enhancements

  • Add ANR detection to bugsnag-android
    #442

  • Add unhandled_events field to native payload
    #445

Bug fixes

  • Ensure boolean object from map serialised as boolean primitive in JNI
    #452

  • Prevent NPE occurring when calling resumeSession()
    #444

v4.12.0

27 Feb 15:35
9fb56cd
Compare
Choose a tag to compare

Enhancements

  • Add stopSession() and resumeSession() to Client
    #429

Bug fixes

  • Prevent overwriting config.projectPackages if already set
    #428

  • Fix incorrect session handledCount when notifying in quick succession
    #434

v4.11.0

22 Jan 16:12
ffc7dc1
Compare
Choose a tag to compare

Enhancements

  • [NDK] Improve support for C++ exceptions, adding the exception class name
    and description to reports and improving the stacktrace quality
    #412

  • Update vendored GSON dependency to latest available version
    #415

Bug fixes

  • Fix cached error deserialisation where the Throwable has a cause
    #418

  • Refactor error report deserialisation
    #419

  • Fix unlikely initialization failure if a device orientation event listener
    cannot be enabled

  • Cache result of device root check
    #411

  • Prevent unnecessary free disk calculations on initialisation
    #409