Hi,
Recently I have pushed an update to my Android app with the newest libs and started to get some crash reports accompanied by 1 star ratings and bad reviews from users.
Here is a sample of the backtrace:
#00 pc 0002cbb4 /system/lib/libstlport.so (std::__node_alloc_impl::_M_allocate(unsigned int&)+47)
#01 pc 000bfcd7 /system/vendor/lib/libsc-a3xx.so
#02 pc 000d8b1b /system/vendor/lib/libsc-a3xx.so
#03 pc 000e8bcd /system/vendor/lib/libsc-a3xx.so
#04 pc 000eba59 /system/vendor/lib/libsc-a3xx.so
#05 pc 00060abd /system/vendor/lib/egl/libGLESv2_adreno.so (core_glCompileShader+348)
#06 pc 00041bc3 /system/vendor/lib/egl/libGLESv2_adreno.so (glCompileShader+16)
#07 pc 0002900d /system/lib/libhwui.so
#08 pc 00029219 /system/lib/libhwui.so
#09 pc 00029e5d /system/lib/libhwui.so
#10 pc 00029ea9 /system/lib/libhwui.so
#11 pc 0001f2e3 /system/lib/libhwui.so
#12 pc 0002051f /system/lib/libhwui.so
#13 pc 0002059d /system/lib/libhwui.so
#14 pc 00015f45 /system/lib/libhwui.so
#15 pc 000156af /system/lib/libhwui.so
#16 pc 000155a3 /system/lib/libhwui.so
#17 pc 0001e2ff /system/lib/libhwui.so
#18 pc 0006c46d /system/lib/libandroid_runtime.so
#19 pc 00020d0c /system/lib/libdvm.so (dvmPlatformInvoke+112)
#20 pc 000519af /system/lib/libdvm.so (dvmCallJNIMethod(unsigned int const*, JValue*, Method const*, Thread*)+398)
#21 pc 0002a1a0 /system/lib/libdvm.so
#22 pc 00031650 /system/lib/libdvm.so (dvmMterpStd(Thread*)+76)
#23 pc 0002ece8 /system/lib/libdvm.so (dvmInterpret(Thread*, Method const*, JValue*)+184)
#24 pc 000640f9 /system/lib/libdvm.so (dvmInvokeMethod(Object*, Method const*, ArrayObject*, ArrayObject*, ClassObject*, bool)+392)
#25 pc 0006c05f /system/lib/libdvm.so
#26 pc 0002a1a0 /system/lib/libdvm.so
#27 pc 00031650 /system/lib/libdvm.so (dvmMterpStd(Thread*)+76)
#28 pc 0002ece8 /system/lib/libdvm.so (dvmInterpret(Thread*, Method const*, JValue*)+184)
#29 pc 00063e15 /system/lib/libdvm.so (dvmCallMethodV(Thread*, Method const*, Object*, bool, JValue*, std::__va_list)+336)
#30 pc 0004d597 /system/lib/libdvm.so
#31 pc 000520df /system/lib/libandroid_runtime.so
And another one:
#00 pc 0036fb08 /system/vendor/lib/egl/libGLES_mali.so
#01 pc 0036fc30 /system/vendor/lib/egl/libGLES_mali.so
#02 pc 00394d98 /system/vendor/lib/egl/libGLES_mali.so
#03 pc 00394e68 /system/vendor/lib/egl/libGLES_mali.so
#04 pc 00392494 /system/vendor/lib/egl/libGLES_mali.so (glDrawArrays+48)
#05 pc 00021bd5 /system/lib/libhwui.so
#06 pc 00017e17 /system/lib/libhwui.so
#07 pc 00015617 /system/lib/libhwui.so
#08 pc 000154ff /system/lib/libhwui.so
#09 pc 0001e27f /system/lib/libhwui.so
#10 pc 0006c77d /system/lib/libandroid_runtime.so
#11 pc 0001ea0c /system/lib/libdvm.so (dvmPlatformInvoke+112)
#12 pc 0004ef8b /system/lib/libdvm.so (dvmCallJNIMethod(unsigned int const*, JValue*, Method const*, Thread*)+398)
#13 pc 00027e20 /system/lib/libdvm.so
#14 pc 0002ee54 /system/lib/libdvm.so (dvmMterpStd(Thread*)+76)
#15 pc 0002c4b8 /system/lib/libdvm.so (dvmInterpret(Thread*, Method const*, JValue*)+184)
#16 pc 0006166d /system/lib/libdvm.so (dvmInvokeMethod(Object*, Method const*, ArrayObject*, ArrayObject*, ClassObject*, bool)+392)
#17 pc 0006969f /system/lib/libdvm.so
#18 pc 00027e20 /system/lib/libdvm.so
#19 pc 0002ee54 /system/lib/libdvm.so (dvmMterpStd(Thread*)+76)
#20 pc 0002c4b8 /system/lib/libdvm.so (dvmInterpret(Thread*, Method const*, JValue*)+184)
#21 pc 00061389 /system/lib/libdvm.so (dvmCallMethodV(Thread*, Method const*, Object*, bool, JValue*, std::__va_list)+336)
#22 pc 0004ab73 /system/lib/libdvm.so
#23 pc 0005234b /system/lib/libandroid_runtime.so
#24 pc 000538df /system/lib/libandroid_runtime.so (android::AndroidRuntime::start(char const*, char const*)+354)
#25 pc 0000105b /system/bin/app_process
#26 pc 0000e45f /system/lib/libc.so (__libc_init+50)
#27 pc 00000d7c /system/bin/app_process
Before the update I was not calling Haxe from Java with a HaxeObject, instead I was only asking Java for events and stuff because I had issues with HaxeObject. With this update I have decided to use HaxeObject and call back Haxe.
Ofcourse on my devices everything works fine. I don’t have any more details.
In most of the backtraces there is the call to ‘dvmCallJNIMethod’ so does it mean that the error is related to JNI?
Cheers