App Crash on Android OS 6 Samsung Galaxy S7 SM-G930FD (JSC Crash) 64 bit support A/libc: Fatal signal 11 (SIGSEGV)
Problem
Bug Report Crashed on launch Crashed with only this error log traced on android logcat A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 20217. To Reproduce react-native run-android and navigate to second screen from initial route through stack navigator. I am using `React-Navigation 3.6` App crashes as soon as I start going into `react-navigation` and crashing in `Samsung S7 64 bit CPU` device, working fine in other android devices which I am using. Expected Behavior just to work in a stable manner. like in earlier react-native version 0.58 Environment React Native Environment Info: System: OS: Mac OS mojave 10.14 Binaries: npm: 6.4.1 Android Studio: Version 3.2.1 Android 6.0.1 (real device: Samsung S7 SM-G930FD) React Native v0.59.3 Temporary Workaround: When I removed 64 bit ndk filters "arm64-v8a", "x86_64" from ndk abiFilters in defaultConfig block of buidl.gradle by provide only 32 bit support. It works fine. [code block]
Error Output
error log traced on android logcat **A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 20217.**
Unverified for your environment
Select your OS to check compatibility.
1 Fix
Fix App Crash on Samsung Galaxy S7 by Adjusting NDK Filters
The app crashes due to a segmentation fault (SIGSEGV) when attempting to access memory that is not allocated. This issue is likely related to the 64-bit support in the NDK, which may not be fully compatible with the specific architecture of the Samsung Galaxy S7 (64-bit CPU). Removing the 64-bit filters allows the app to run in 32-bit mode, which resolves the crash.
Awaiting Verification
Be the first to verify this fix
- 1
Open build.gradle File
Navigate to the android/app directory of your React Native project and open the build.gradle file.
- 2
Modify NDK ABI Filters
Locate the defaultConfig block in the build.gradle file. Remove the 64-bit ABI filters 'arm64-v8a' and 'x86_64' to ensure the app only targets 32-bit architectures.
groovyndk { abiFilters 'armeabi-v7a', 'x86' } - 3
Rebuild the Project
After making the changes, rebuild the project to apply the new configuration. Use the command below in your terminal.
bashreact-native run-android - 4
Test on Samsung Galaxy S7
Once the app is rebuilt, install it on the Samsung Galaxy S7 and launch the app. Navigate to the second screen to verify that the crash no longer occurs.
Validation
Confirm that the app launches successfully and allows navigation to the second screen without crashing. Monitor the logcat for any SIGSEGV errors during navigation.
Sign in to verify this fix
Environment
Submitted by
Alex Chen
2450 rep