Hi,
I have a question to return a 2-dimension string array via JNI. Here is my code snippet:
jobjectArray result;
result = env->NewObjectArray(len, env->FindClass("java/lang/String"), NULL); //create an array for the 1st dimension
for(i=0; i<len; i++) {
jobjectArray iarr = env->NewObjectArray(len2, env->FindClass("java/lang/String"), NULL); //intermediate array for the 2nd dimension
if (iarr == NULL) {
return NULL;
}
for(int j=0; j<len2[i]; j++) {
env->SetObjectArrayElement(iarr, j, env->NewStringUTF("AAA"));
}
env->SetObjectArrayElement(result, i, iarr);
env->DeleteLocalRef(iarr);
}
return result;
When variable i=1, the VM is always crashing at this line: "iarr = env->NewObjectArray(len2, env->FindClass("java/lang/String"), NULL); ". But len2[i] is greater than 0, what's the problem in my code?
Thanks in advance.