flyskywhy / react-native-gcanvas

react native canvas based on gpu opengl glsl GCanvas -- A lightweight cross-platform graphics rendering engine. (超轻量的跨平台图形引擎)
Apache License 2.0
210 stars 21 forks source link

Fatal signal JNISurfaceTextu lib/arm64/libgcanvas.so #54

Closed am2619015 closed 1 year ago

am2619015 commented 1 year ago

The app crashes and closes without leaving any logs on the react native side, and the error that caused the app to close is observed with Logcat as follows:

Furthermore, the error occurred at random, not always as a result of its trigger, and I have no idea how to reproduce it. 

Thanks in advance.

Dependencies "react": "18.1.0", "react-native": "0.70.5", "@flyskywhy/react-native-gcanvas": "^2.3.33", "react-native-screens": "^3.18.0", "react-native-reanimated": "2.10.0"

Error code

  Slow Input: 118ms so far, channel '949b135 com.app.name/com.app.name.MainActivity (server)' publisher ~ publishMotionEvent: seq=1778279, deviceId=-1, source=0x1002, action=0x0, actionButton=0x00000000, flags=0x0, edgeFlags=0x0, metaState=0x0, buttonState=0x0, xOffset=0.000000, yOffset=0.000000, xPrecision=1.000000, yPrecision=1.000000, downTime=258565314436000, eventTime=258565314436000, pointerCount=1
2022-11-30 18:27:54.314  1676-2123  InputTransport          pid-1676                             W  Slow Input: 109ms so far, channel '949b135 com.app.name/com.app.name.MainActivity (server)' publisher ~ publishMotionEvent: seq=1778354, deviceId=-1, source=0x1002, action=0x0, actionButton=0x00000000, flags=0x0, edgeFlags=0x0, metaState=0x0, buttonState=0x0, xOffset=0.000000, yOffset=0.000000, xPrecision=1.000000, yPrecision=1.000000, downTime=258567083649000, eventTime=258567083649000, pointerCount=1
2022-11-30 18:28:02.041 21118-21118 Choreographer           com.app.name              W  Frame time is 0.115854 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
2022-11-30 18:28:05.228 21118-21214 libc                    com.app.name              A  Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x3b293333383150 in tid 21214 (JNISurfaceTextu), pid 21118 (oinfodoco.iiysi)
2022-11-30 18:28:05.540 21237-21237 DEBUG                   pid-21237                            A  pid: 21118, tid: 21214, name: JNISurfaceTextu  >>> com.app.name <<<
2022-11-30 18:28:05.541 21237-21237 DEBUG                   pid-21237                            A        #00 pc 0000000000084af4  /data/app/~~2xEkriDxn7giKGR2L4rpzg==/com.app.name-4Zzw_tOlpX7aPdO-cVVP5Q==/lib/arm64/libgcanvas.so (BuildId: 9099ce90ef88003ee23622d140565fb61428b395)
2022-11-30 18:28:07.245  1676-21244 ActivityTaskManager     pid-1676                             W    Force finishing activity com.app.name/.MainActivity
flyskywhy commented 1 year ago

Please run

~/tools/android-sdk/ndk/YOUR_NDK_VERSION/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-addr2line -e react-native-gcanvas/android/gcanvas_library/build/intermediates/cmake/debug/obj/arm64-v8a/libgcanvas.so 0000000000084af4

and tell me the result

am2619015 commented 1 year ago

Sure, im on a MacOS so after run this command

/Users/user_name/Library/Android/sdk/ndk/21.4.7075529/toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64/bin/aarch64-linux-android-addr2line -e /Users/user_name/Desktop/app_name_folder/app_name_folder/node_modules/@flyskywhy/react-native-gcanvas/android/gcanvas_library/build/intermediates/cmake/debug/obj/arm64-v8a/libgcanvas.so 0000000000084af4

I get this result

/Users/user_name/Desktop/app_name_folder/app_name_folder/node_modules/@flyskywhy/react-native-gcanvas/android/gcanvas_library/.cxx/Debug/2u159c2x/arm64-v8a/../../../../../../core/src/GCanvasWeex.cpp:1633
flyskywhy commented 1 year ago

@flyskywhy/react-native-gcanvas@2.3.34 should fix the issue, please try it and tell me the result.

am2619015 commented 1 year ago

Sorry for the late, with @flyskywhy/react-native-gcanvas@2.3.35 I didn't see any crashes on the app recently, but when I run the command you told me before, I get this result now

/Users/user_name/Library/Android/sdk/ndk/21.4.7075529/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/memory:2293
flyskywhy commented 1 year ago

Never mind c++/v1/memory:2293 , cause it (get line from e.g. 0000000000084af4) only make sense when APP crash and logcat that crash at e.g. 0000000000084af4