【发布时间】:2013-05-28 12:53:38
【问题描述】:
我在java中有以下方法,我尝试从cpp调用,
public void callback(short[] sArray) {
Log.e("java", ""+sArray.length);
}
在 cpp 中我尝试了这段代码来调用 java 方法:
jclass cls = env->GetObjectClass(obj);
jmethodID mid =
env->GetMethodID(cls, "callback", "([S)V");
if (mid == NULL) {
return 0; // method not found
}
//short *sbuffer;
//sbuffer is filled with some data
env->CallVoidMethod(obj, mid,sbuffer);
但我收到了这个错误:
05-28 18:13:29.850:W/dalvikvm(18423):间接引用无效 decodeIndirectRef 05-28 18:13:29.850 中的 0x75402008:E/dalvikvm(18423): VM 中止 05-28 18:13:29.850:A/libc(18423):致命信号 11 (SIGSEGV) 在 0xdeadd00d (code=1),线程 18423 (ssconverterdemo)
我在这里做错了什么?
【问题讨论】:
标签: android android-ndk java-native-interface