Android mapping support

Upload your Android mapping files to BugSnag.

This documentation is for version 4 of the BugSnag Android notifier. We recommend upgrading to the latest release using our Upgrade guide. Documentation for the current release can be found here.

Overview

If you are using ProGuard, DexGuard, or R8 to minify and optimize your app, this will cause method and class names to become obfuscated which makes debugging harder.

Similarly, for applications which use the NDK, native stacktraces from C or C++ code consist of a list of addresses and numeric offsets. BugSnag requires a mapping file to match a given address with a file name and method.

Our Android Gradle plugin automatically uploads mapping files for each release build showing all available file and method names in your error reports.

BugSnag’s Gradle plugin will automatically upload ProGuard, DexGuard, and R8 mapping files and NDK shared object files when you build your app. See our Android Gradle plugin docs to get started.

Manually uploading mapping files

In cases where you are not using Gradle, you’ll need to manually upload your mapping files to BugSnag using our APIs.

For ProGuard, DexGuard, and R8 mapping files see the Android Mapping Upload API reference for more details.

For NDK shared object files see the NDK Symbol Upload API reference for more details.

Uploaded mappings will only be applied to new error events. They will not be applied retroactively to existing errors events.

ProGuard Settings

If you are using proguard-android-optimize.txt settings then BugSnag will convert the stack traces to a human-readable format, but the original file names might not be available.

If the stack traces provided to BugSnag do not contain a valid file, then we will use the unqualified class name in place of the file name.