VirtualApp icon indicating copy to clipboard operation
VirtualApp copied to clipboard

运行时App 加载了一个 so ,然后里面的调用出现 JNI DETECTED ERROR

Open xiaoxiayu opened this issue 4 years ago • 1 comments

使用 https://github.com/ServenScorpion/VirtualApp/blob/master/release/app-debug.apk 可以正常运行App,但是App在加载了一个 /lib/arm64/libEngineDll.so 后出现了 JNI DETECTED ERROR。

在 VirtualApp 外运行 App 是正常的。看着像是 VirtualApp 启动 App 时影响了 JNI 的运行时环境导致原本应该 attach 了的本地线程没有被正确 attach 到 JNI 环境。

请问有遇到过类似这种问题吗?

ERROR: JNI DETECTED ERROR IN APPLICATION: thread Thread[1,tid=8971,Native,Thread*=0x7485a14c00,peer=0x749a3c78,"main"] using JNIEnv* from thread Thread[42,tid=9194,Runnable,Thread*=0x7479cec000,peer=0x138c09f0,"UnityMain"] /com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] in call to NewStringUTF 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] from void com.harry.engine.AndroidUtils.GameLogicTickInBackground() 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] "main" prio=5 tid=1 Runnable 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] | group="main" sCount=0 dsCount=0 flags=0 obj=0x749a3c78 self=0x7485a14c00 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] | sysTid=8971 nice=0 cgrp=default sched=0/0 handle=0x750c033548 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] | state=R schedstat=( 2281341449 165011571 1556 ) utm=198 stm=29 core=1 HZ=100 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] | stack=0x7ff0b81000-0x7ff0b83000 stackSize=8MB 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] | held mutexes= "mutator lock"(shared held) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #0 pc 00000000003c19b0 /system/lib64/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits>&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool)+220) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #1 pc 000000000048f3bc /system/lib64/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits>&, bool, BacktraceMap*, bool) const+352) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #2 pc 00000000002e4bb8 /system/lib64/libart.so (art::JavaVMExt::JniAbort(char const*, char const*)+968) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #3 pc 00000000002e4fc8 /system/lib64/libart.so (art::JavaVMExt::JniAbortV(char const*, char const*, std::__va_list)+116) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #4 pc 00000000000fcffc /system/lib64/libart.so (art::(anonymous namespace)::ScopedCheck::AbortF(char const*, ...)+148) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #5 pc 00000000000fb6f8 /system/lib64/libart.so (art::(anonymous namespace)::ScopedCheck::CheckPossibleHeapValue(art::ScopedObjectAccess&, char, art::(anonymous namespace)::JniValueType)+416) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #6 pc 00000000000fad44 /system/lib64/libart.so (art::(anonymous namespace)::ScopedCheck::Check(art::ScopedObjectAccess&, bool, char const*, art::(anonymous namespace)::JniValueType*)+628) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #7 pc 00000000000f0bd0 /system/lib64/libart.so (art::(anonymous namespace)::CheckJNI::NewStringUTF(_JNIEnv*, char const*)+692) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #8 pc 0000000000045fdc /data/app/com.lilithgames.rok.offical.cn-_chAgog1IqkQOUaFGuiLJA==/lib/arm64/libEngineDll.so (???) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at com.harry.engine.AndroidUtils.GameLogicTickInBackground(Native method) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at com.harry.engine.MyUnityPlayerActivity$2.handleMessage(MyUnityPlayerActivity.java:104) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] - locked <0x01f35872> (a com.harry.engine.MyRelativeLayout) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at android.os.Handler.dispatchMessage(Handler.java:106) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at android.os.Looper.loop(Looper.java:193) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at android.app.ActivityThread.main(ActivityThread.java:7009) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at java.lang.reflect.Method.invoke(Native method) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

xiaoxiayu avatar Jul 29 '21 02:07 xiaoxiayu

这个应该是有映射才对的,你说的之前是有遇到的。时间点有点长了

@.***

发件人: xiaoxia_yu 发送时间: 2021-07-29 10:44 收件人: ServenScorpion/VirtualApp 抄送: Subscribed 主题: [ServenScorpion/VirtualApp] 运行时App 加载国一个 so ,然后里面的调用出现 JNI DETECTED ERROR (#5) 使用 https://github.com/ServenScorpion/VirtualApp/blob/master/release/app-debug.apk 可以正常运行App,但是App在加载了一个 /lib/arm64/libEngineDll.so 后出现了 JNI DETECTED ERROR。 在 VirtualApp 外运行 App 是正常的。看着像是 VirtualApp 启动 App 时影响了 JNI 的运行时环境导致原本应该 attach 了的本地线程没有被正确 attach 到 JNI 环境。 请问有遇到过类似这种问题吗? ERROR: JNI DETECTED ERROR IN APPLICATION: thread Thread[1,tid=8971,Native,Thread*=0x7485a14c00,peer=0x749a3c78,"main"] using JNIEnv* from thread Thread[42,tid=9194,Runnable,Thread*=0x7479cec000,peer=0x138c09f0,"UnityMain"] /com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] in call to NewStringUTF 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] from void com.harry.engine.AndroidUtils.GameLogicTickInBackground() 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] "main" prio=5 tid=1 Runnable 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] | group="main" sCount=0 dsCount=0 flags=0 obj=0x749a3c78 self=0x7485a14c00 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] | sysTid=8971 nice=0 cgrp=default sched=0/0 handle=0x750c033548 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] | state=R schedstat=( 2281341449 165011571 1556 ) utm=198 stm=29 core=1 HZ=100 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] | stack=0x7ff0b81000-0x7ff0b83000 stackSize=8MB 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] | held mutexes= "mutator lock"(shared held) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #0 pc 00000000003c19b0 /system/lib64/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits>&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool)+220) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #1 pc 000000000048f3bc /system/lib64/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits>&, bool, BacktraceMap*, bool) const+352) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #2 pc 00000000002e4bb8 /system/lib64/libart.so (art::JavaVMExt::JniAbort(char const*, char const*)+968) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #3 pc 00000000002e4fc8 /system/lib64/libart.so (art::JavaVMExt::JniAbortV(char const*, char const*, std::__va_list)+116) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #4 pc 00000000000fcffc /system/lib64/libart.so (art::(anonymous namespace)::ScopedCheck::AbortF(char const*, ...)+148) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #5 pc 00000000000fb6f8 /system/lib64/libart.so (art::(anonymous namespace)::ScopedCheck::CheckPossibleHeapValue(art::ScopedObjectAccess&, char, art::(anonymous namespace)::JniValueType)+416) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #6 pc 00000000000fad44 /system/lib64/libart.so (art::(anonymous namespace)::ScopedCheck::Check(art::ScopedObjectAccess&, bool, char const*, art::(anonymous namespace)::JniValueType*)+628) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #7 pc 00000000000f0bd0 /system/lib64/libart.so (art::(anonymous namespace)::CheckJNI::NewStringUTF(_JNIEnv*, char const*)+692) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] native: #8 pc 0000000000045fdc /data/app/com.lilithgames.rok.offical.cn-_chAgog1IqkQOUaFGuiLJA==/lib/arm64/libEngineDll.so (???) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at com.harry.engine.AndroidUtils.GameLogicTickInBackground(Native method) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at com.harry.engine.MyUnityPlayerActivity$2.handleMessage(MyUnityPlayerActivity.java:104) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] - locked <0x01f35872> (a com.harry.engine.MyRelativeLayout) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at android.os.Handler.dispatchMessage(Handler.java:106) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at android.os.Looper.loop(Looper.java:193) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at android.app.ActivityThread.main(ActivityThread.java:7009) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at java.lang.reflect.Method.invoke(Native method) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537) 2021-07-29 01:22:32.868 8971-8971/com.lilithgames.rok.offical.cn A/orpion.bit64:p: java_vm_ext.cc:542] at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

ServenScorpion avatar Jul 29 '21 10:07 ServenScorpion