JNIEXPORT void JNICALL Java_SomeClass_someMethod(JNIEnv* env, jobject obj, jintArray array) {
jsize size = (*env)->GetArrayLength(env, array);
jint* buffer = (*env)->GetIntArrayElements(env, array, NULL);
...
(*env)->ReleaseIntArrayElements(env, array, buffer, 0);
}
JNI_ABORT
стоит передавать в том случае, если нужны были данные из массива, но сам исходный массив изменять не надо. Если изменения в массиве нужно сохранить, то вместо JNI_ABORT
надо передать 0.