SIGABRT in libfbjni.so: facebook::jni::JNativeRunnable::run() crash on arm64-v8a (React Native)

15 hours ago 1
ARTICLE AD BOX

I’m seeing a native crash (SIGABRT) on arm64-v8a devices in a React Native Android app on Android 15 and 16. The crash originates from libfbjni.so while executing facebook::jni::JNativeRunnable::run().

The app aborts inside JNIAbort, suggesting an invalid JNI call, thread misuse, or a native exception propagating into ART.

This crash is occurring in production builds and appears tied to background thread execution.

Environment

Architecture: arm64-v8a

Framework: React Native

Native libs involved:

libreactnative.so

libfbjni.so

Other libraries on stack:

com.facebook.react.bridge.queue.MessageQueueThread

com.airbnb.lottie.LottieTask

Build type: Release

Android Runtime: ART

What I’ve Tried / Observed

Crash only occurs in native code (no Java exception logged)

Happens only on Android 15 and 16

Happens on background threads (MessageQueueThread / LottieTask)

Appears to be a JNI abort rather than a segmentation fault

Likely caused by:

Calling JNI from the wrong thread

Using a stale or invalid JNIEnv

Accessing a destroyed Java object from native code

React Native / fbjni version mismatch

Abort message: JNI DETECTED ERROR IN APPLICATION #00 pc 0x000000000005c918 libc.so (abort+172) #01 pc 0x00000000008a0f04 libart.so (art::Runtime::Abort+476) #04 pc 0x00000000002f6200 libart.so (art::JavaVMExt::JniAbort+804) #05 pc 0x00000000003253f8 libreactnative.so #08 pc 0x0000000000017dd0 libfbjni.so facebook::jni::detail::MethodWrapper< void (facebook::jni::JNativeRunnable::*)(), &facebook::jni::JNativeRunnable::run() >::dispatch(...) #11 pc 0x0000000001f006fc base.odex com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage #16 pc 0x0000000000d29950 base.odex com.airbnb.lottie.LottieTask.run #17 pc 0x000000000031d4f0 boot.oat (java.lang.Thread.run)
Read Entire Article