当我调用(* env)-> CallVoidMethod函数结果崩溃时Android JNI开发

时间:2019-06-12 07:22:56

标签: java-native-interface

tag:adc5dcaf540a1541c2d41087c2b98004:54ef4c330a2e654b890dedc561fbe797
Exception:(9.10.0.2503)Build fingerprint: 'HUAWEI/EML-AL00/HWEML:9/HUAWEIEML-AL00/187C00R1:user/release-keys'
Revision: '0'
pid: 27696, tid: 28121, name: spdy-0 >>> com.autonavi.minimap <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
r0 00000000 r1 00006dd9 r2 00000006 r3 00000008
r4 00006c30 r5 00006dd9 r6 ce3723fc r7 0000010c
r8 00000073 r9 d4f127dc sl ce37270c fp ce3726c8
ip 00000041 sp ce3723e8 lr f48e98dd pc f48e1602 cpsr 200f0030

backtrace:
#00 pc 0001d602 /system/lib/libc.so (abort+57)
#01 pc 0035f14b /system/lib/libart.so (art::Runtime::Abort(char const*)+950)
#02 pc 0000720b /system/lib/libbase.so (android::base::LogMessage::~LogMessage()+578)
#03 pc 001b2227 /system/lib/libart.so (art::IndirectReferenceTable::AbortIfNoCheckJNI(std::__1::basic_string, std::__1::allocator > const&)+174)
#04 pc 00233c4f /system/lib/libart.so (art::IndirectReferenceTable::GetChecked(void*) const+274)
#05 pc 0022ff73 /system/lib/libart.so (art::JavaVMExt::DecodeGlobal(void*)+10)
#06 pc 00385c0d /system/lib/libart.so (art::Thread::DecodeJObject(_jobject*) const+168)
#07 pc 00358f77 /system/lib/libart.so (art::(anonymous namespace)::ArgArray::BuildArgArrayFromVarArgs(art::ScopedObjectAccessAlreadyRunnable const&, art::ObjPtr, std::__va_list)+82)
#08 pc 00359fc9 /system/lib/libart.so (art::InvokeVirtualOrInterfaceWithVarArgs(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, std::__va_list)+300)
#09 pc 00271809 /system/lib/libart.so (art::JNI::CallVoidMethod(_JNIEnv*, _jobject*, _jmethodID*, ...)+492)
#10 pc 00004f43 /data/app/com.autonavi.minimap-Dkv8mcA_IvSPBVcGwBUYKQ==/lib/arm/libtnet-4.0.0.so


PC 00004f43是功能

(* env)-> CallVoidMethod(env,agent-> thiz,agent-> methodCustomControlFrameFail,                                javaSession,userData,ID,错误);

系统:android 9

huawei / honor

--------------------------------------
Context as follow:
--------------------------------------
    if (env != NULL) {
        //callback java interface
        (*env)->CallVoidMethod(env, agent->thiz, agent->methodCustomControlFrameFail,
                               javaSession, userData, id, error);
        checkJNIException(env);
        CJNICheckExp(env);
    }

0 个答案:

没有答案