bugsnag / bugsnag-android-gradle-plugin

Gradle plugin for BugSnag which uploads ProGuard, DexGuard and NDK mapping files, and sends build notifications
https://docs.bugsnag.com/build-integrations/gradle/
MIT License
70 stars 38 forks source link

Allow using objcopy instead of objdump for native symbols #484

Closed lemnik closed 2 years ago

lemnik commented 2 years ago

Goal

Support using objcopy instead of objdump to extract native symbols (when supported by the current NDK).

Design

Bugsnag can now be configured with useLegacyNdkSymbolUpload = false on supported projects, which will use objcopy to extract the debug info from native .so files and upload them to a new Bugsnag endpoint. Projects must be configured to use a version of the bugsnag-android SDK of at least 5.26.0 to be considered compatible (an error will be emitted otherwise).

This process is significantly faster and allows us to support NDK toolchains that don't have the old GNU based toolchains (21.1.6352462 and onwards).

Testing

New end to end scenario and updated test fixture.