JNI tambien provee funciones para
el manejo de variables de instancia de objetos de Java
To get and set Java member variables from a native language method, you must do the following:
Para obtener, por ejemplo, el ID de una variable static int y otra String, de instancia:
fid = (*env)->GetStaticFieldID(env, cls,
"si", "I");
fid
= (*env)->GetFieldID(env, cls, "s",
"Ljava/lang/String;");
Y para obtener o modificar el valor DEL OBJETO DE JAVA y hacer uso y manejo de el, use los IDs con las siguientes funciones:
si
= (*env)->GetStaticIntField(env, cls, fid);
(*env)->SetStaticIntField(env,
cls, fid, 200);
jstr
= (*env)->GetObjectField(env, obj, fid);
(si es de tipo jint y jstr es de tipo jstring)
Ejemplos: