The C Program: Access.c

  1 #include "Access.h"
  2 
  3 JNIEXPORT void JNICALL
  4 Java_Access_setPrivate (JNIEnv *env, jobject this, jint val) {
  5    jclass c = (*env)->GetObjectClass(env, this);
  6    jfieldID fid = (*env)->GetFieldID(env, c, "private_variable", "I");
  7    (*env)->SetIntField(env, this, fid, val);
  8 }
  9 
 10 JNIEXPORT void JNICALL
 11 Java_Access_setStaticPrivate (JNIEnv *env, jobject this, jint val) {
 12    jclass c = (*env)->GetObjectClass(env, this);
 13    jfieldID fid = (*env)->GetStaticFieldID(env, c, "static_variable", "I");
 14    (*env)->SetStaticIntField(env, c, fid, val);
 15 }