pine
pine copied to clipboard
hook函数里执行某些JNI 方法会crash
我hook了一些java方法,比如URL.getHost,然后在里面执行获取调用栈的方法: jobject crrt_thread = (jobject)t_env->CallStaticObjectMethod(gThreadClass, gCurrentThreadID); jobjectArray stacktraceElemnts = (jobjectArray)t_env->CallNonvirtualObjectMethod(crrt_thread, gThreadClass, gGetStackTraceID); 这两个函数,只有第一个能执行成功,第二个会使系统崩溃 而我在本身就是JNI方法的地方hook,也就是那些被声明为native的方法,上面两个都能成功,请问这是为什么呢?
另外我看JNI方法的access_flags的值是0x10200101,而java方法的access_flags的值是0x10380011,我把URL.getHost的access_flags值也改成0x10200101,结果跟之前一样,还是只能执行上面的第一个函数,第二个会崩溃