如何将int数组从Java返回到JNI

时间:2011-12-02 15:10:54

标签: java android c java-native-interface

我必须从JNI调用Java方法。这个Java方法返回int数组(int [] simpleMethod())。如何从JNI调用此方法将数组作为返回值? 我知道当方法返回void / String / int / etc时怎么做,但是找不到任何带数组的东西。 我有一些想法如何解决这个问题,但也许有简单的答案。

1 个答案:

答案 0 :(得分:18)

使用CallObjectMethod。例如:

jmethodID myMethod = (*env)->GetMethodID(myClass, "myMethod", "()[I");
jintArray retval = (jintArray) (*env)->CallObjectMethod(myObject, myMethod);