Skip to content

android crashes upon emitOnDisconnectPeripheral #1391

@Aduomas

Description

@Aduomas

Before open an issue

  • Check the closed issues, your question maybe is not new.
  • We can't debug or reproduce hardware issue.
  • If the library is not working 99% you did something wrong, in the code, installation or in the phone permissions.

Describe the bug
crashes in production appearing on emitOnDisconnectPeripheral

To Reproduce
i have not observed this yet in development environment.

Expected behavior
not crash?

Screenshots

Image
Exception java.lang.RuntimeException: __next_prime overflow
  at com.facebook.react.bridge.CxxCallbackImpl.nativeInvoke (CxxCallbackImpl.kt)
  at com.facebook.react.bridge.CxxCallbackImpl.invoke (CxxCallbackImpl.kt:18)
  at it.innove.NativeBleManagerSpec.emitOnDisconnectPeripheral (NativeBleManagerSpec.java:58)
  at it.innove.Peripheral.sendDisconnectionEvent (Peripheral.java:114)
  at it.innove.Peripheral.lambda$onConnectionStateChange$3 (Peripheral.java:408)
  at android.os.Handler.handleCallback (Handler.java:959)
  at android.os.Handler.dispatchMessage (Handler.java:100)
  at android.os.Looper.loopOnce (Looper.java:257)
  at android.os.Looper.loop (Looper.java:342)
  at android.app.ActivityThread.main (ActivityThread.java:9634)
  at java.lang.reflect.Method.invoke
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:619)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:929)
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***

backtrace:
  #00  pc 0x00000000003ad610  /data/app/~~bOM4YDM5L2fXHXTeI-Ng1A==/XXX-N6RJaC-NDpepOtcyj0s62Q==/split_config.arm64_v8a.apk!libreactnative.so (std::__ndk1::__function::__func<facebook::react::JavaTurboModule::configureEventEmitterCallback()::$_0, std::__ndk1::allocator<facebook::react::JavaTurboModule::configureEventEmitterCallback()::$_0>, void (folly::dynamic)>::operator()(folly::dynamic&&)+17760256) (BuildId: c2b6b8cc86e09fa8)
  #01  pc 0x000000000046fa14  /data/app/~~bOM4YDM5L2fXHXTeI-Ng1A==/X-N6RJaC-NDpepOtcyj0s62Q==/split_config.arm64_v8a.apk!libreactnative.so (facebook::jni::detail::MethodWrapper<void (facebook::react::JCxxCallbackImpl::*)(facebook::react::NativeArray*), &facebook::react::JCxxCallbackImpl::invoke(facebook::react::NativeArray*), facebook::react::JCxxCallbackImpl, void, facebook::react::NativeArray*>::dispatch(facebook::jni::alias_ref<facebook::jni::detail::JTypeFor<facebook::jni::HybridClass<facebook::react::JCxxCallbackImpl, facebook::react::JCallback>::JavaPart, facebook::react::JCallback, void>::_javaobject*>, facebook::react::NativeArray*&&)+120) (BuildId: c2b6b8cc86e09fa8)
  #02  pc 0x000000000046f924  /data/app/~~bOM4YDM5L2fXHXTeI-Ng1A==/XXX-N6RJaC-NDpepOtcyj0s62Q==/split_config.arm64_v8a.apk!libreactnative.so (facebook::jni::detail::MethodWrapper<void (facebook::react::JCxxCallbackImpl::*)(facebook::react::NativeArray*), &facebook::react::JCxxCallbackImpl::invoke(facebook::react::NativeArray*), facebook::react::JCxxCallbackImpl, void, facebook::react::NativeArray*>::call(_JNIEnv*, _jobject*, facebook::jni::detail::JTypeFor<facebook::jni::HybridClass<facebook::react::NativeArray, facebook::jni::detail::BaseHybridClass>::JavaPart, facebook::jni::JObject, void>::_javaobject*)+76) (BuildId: c2b6b8cc86e09fa8)
  #03  pc 0x0000000000da4bbc  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (art_jni_trampoline+124)
  #04  pc 0x000000000068a320  /apex/com.android.art/lib64/libart.so (nterp_helper+4016)
  #05  pc 0x00000000002c0c58  /data/app/~~bOM4YDM5L2fXHXTeI-Ng1A==/XXX-N6RJaC-NDpepOtcyj0s62Q==/base.apk (com.facebook.react.bridge.CxxCallbackImpl.invoke+28)
  #06  pc 0x000000000068a2c4  /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
  #07  pc 0x00000000004a28e4  /data/app/~~bOM4YDM5L2fXHXTeI-Ng1A==/XXX-N6RJaC-NDpepOtcyj0s62Q==/base.apk (it.innove.NativeBleManagerSpec.emitOnDisconnectPeripheral+16)
  #08  pc 0x000000000068a2c4  /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
  #09  pc 0x00000000004a5b0a  /data/app/~~bOM4YDM5L2fXHXTeI-Ng1A==/XXX-N6RJaC-NDpepOtcyj0s62Q==/base.apk (it.innove.V.y0+46)
  #10  pc 0x000000000068a2c4  /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
  #11  pc 0x00000000004a4124  /data/app/~~bOM4YDM5L2fXHXTeI-Ng1A==/XXX-N6RJaC-NDpepOtcyj0s62Q==/base.apk (it.innove.V.S+64)
  #12  pc 0x000000000068a2c4  /apex/com.android.art/lib64/libart.so (nterp_helper+3924)
  #13  pc 0x00000000004a3a3c  /data/app/~~bOM4YDM5L2fXHXTeI-Ng1A==/XXX-N6RJaC-NDpepOtcyj0s62Q==/base.apk (it.innove.V.n)
  #14  pc 0x00000000006893a4  /apex/com.android.art/lib64/libart.so (nterp_helper+52)
  #15  pc 0x00000000004a2ff4  /data/app/~~bOM4YDM5L2fXHXTeI-Ng1A==/XXX-N6RJaC-NDpepOtcyj0s62Q==/base.apk (it.innove.Q.run+12)
  #16  pc 0x000000000093e414  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.os.Handler.dispatchMessage+68)
  #17  pc 0x0000000000941df4  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.os.Looper.loopOnce+980)
  #18  pc 0x0000000000941978  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.os.Looper.loop+632)
  #19  pc 0x00000000006e74a4  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.app.ActivityThread.main+2132)
  #20  pc 0x0000000000317460  /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640)
  #21  pc 0x0000000000311508  /apex/com.android.art/lib64/libart.so (_jobject* art::InvokeMethod<(art::PointerSize)8>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jobject*, _jobject*, unsigned long)+544)
  #22  pc 0x00000000005c82c8  /apex/com.android.art/lib64/libart.so (art::Method_invoke(_JNIEnv*, _jobject*, _jobject*, _jobjectArray*) (.__uniq.165753521025965369065708152063621506277)+32)
  #23  pc 0x0000000000da5b74  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (art_jni_trampoline+116)
  #24  pc 0x0000000000c5ec34  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run+116)
  #25  pc 0x0000000000c69048  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (com.android.internal.os.ZygoteInit.main+3272)
  #26  pc 0x0000000000317460  /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640)
  #27  pc 0x0000000000316100  /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeWithVarArgs<_jmethodID*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, std::__va_list)+800)
  #28  pc 0x0000000000639868  /apex/com.android.art/lib64/libart.so (art::JNI<true>::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, std::__va_list)+156)
  #29  pc 0x00000000000df42c  /system/lib64/libandroid_runtime.so (_JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+108)
  #30  pc 0x00000000000f5328  /system/lib64/libandroid_runtime.so (android::AndroidRuntime::start(char const*, android::Vector<android::String8> const&, bool)+928)
  #31  pc 0x00000000000025c8  /system/bin/app_process64 (main+1288)
  #32  pc 0x000000000008f91c  /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+120)

Smartphone (please complete the following information):

  • Device: samsung s23 ultra, s24 ultra
  • OS: android 13, 15, 16
  • react-native-ble-manager version: 12.2.0
  • react-native version: 0.81

Additional context
we use companion scan for scanning, we use ble manager to connect and foreground service to keep the app alive in the background.

we have updated to expo sdk 54, react native 0.81, solved other crashes and observed these immediatelly after.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions