-
Notifications
You must be signed in to change notification settings - Fork 308
Description
Hello Adjust Team,
We are experiencing a critical, low-volume native crash (SIGBUS) that appeared after migrating our Android application from Adjust SDK v4.x to v5.4.0, and which persists after updating to v5.4.1.
Problem Description
The application is randomly crashing on a small percentage of our user base (approx. 200 users, out of millions), exclusively within the native code of the Adjust SDK's signature library.
Crash Details (Sentry Report)
The exception consistently points to a Bus Error (SIGBUS) within the native helper function responsible for signing:
Exception Type: SIGBUS: BusError
Function at Fault: Java_com_adjust_sdk_sig_NativeLibHelper_nSign
Architecture: Exclusively reported on arm64-v8a architecture.
Artifact/Image: The crash occurs within a Split APK file, strongly suggesting a potential conflict with the loading/mapping process of the native library via Android App Bundles (AAB).
split_config.arm64_v8a.apk
Sentry Stack Trace Excerpt:
SIGBUS: BusError
split_config.arm64_v8a.apk 0x78232e79d0 null
...
split_config.arm64_v8a.apk 0x78232fea90 Java_com_adjust_sdk_sig_NativeLibHelper_nSign
...
Debug ID: b6cbc16b-f0f8-dbc4-b3f0-91dfb7dd9a1b
Context and Reproduction Attempts
SDK Version History: Crash started on v5.4.0 and continues on v5.4.1.
Environment: The crash is tied to devices using ARM64-v8a and the App Bundle distribution method.
Diagnosis: A SIGBUS in native code often indicates an issue with memory alignment or corrupted memory mapping when the library (.so) is loaded from the split_config.arm64_v8a.apk.
Mitigation Attempt: We have confirmed the ProGuard/R8 rules are correctly configured to keep the com.adjust.sdk.sig.** classes.
We suspect a low-level bug in the native signature library's implementation for ARM64-v8a in the v5.4.x branch, particularly how it interacts with the dynamic loading/mapping of split APKs.
We need urgent assistance in identifying if this is a known issue patched in a later 5.x version (e.g., 5.4.5) or if it requires a specific fix from the Adjust team.
Thank you for your time and assistance.