实际上,我称之为c ++函数:
JNIEXPORT void JNICALL Java_test_main_JniFunctions_testObject(JNIEnv * env,jobject obj,jobjectArray objArray){....}
我想做的是取回原始对象的值。考虑此对象的java代码声明:
jniFct.testObject(new Object[][]
{
{"testTable"},
{0, 0.0, "aaa"},
{1, 1.1, "bbb"},
{2, 2.2, "ccc"}
});
例如,从第二列的第三行获取值。
任何人都知道如何做到这一点?
答案 0 :(得分:12)
jobject row = env->GetObjectArrayElement(objArray, 2);
jobject value = env->GetObjectArrayElement((jobjectArray)row, 1);
const char* cvalue = env->GetStringUTFChars((jstring)value, 0);