从jni Android V4调用java函数

时间:2013-08-26 17:38:31

标签: java android java-native-interface

为了从JNI调用Android Activity中的java函数,我使用以下代码:

    jmethodID messageMe = env->GetStaticMethodID(clazz, "updateStatus", "(IILjava/lang/String;)V");
    env->CallStaticVoidMethod(clazz, messageMe);

它适用于Android 2.3,但不适用于Android 4.0.3,我收到此错误消息 E / dalvikvm(9341):JNI ERROR(app bug):访问过时的全局引用0x5b6130b2(大小为125的表中的索引19500)

那么,如何从新版本和旧版本的jni中正确调用java函数

由于

1 个答案:

答案 0 :(得分:0)

您没有将任何参数传递给CallStaticVoidMethod - 正如您在方法签名字符串中看到的那样,它正在期待4。

我在另一个问题中读到这个错误是由传入不正确的参数类型引起的: Error: JNI ERROR (app bug): accessed stale global reference