Method Signatures#
Format: ()
Examples:
()V
(Ljava/lang/Object;)Ljava/lang/Object;
Getting JNI Environment#
JNIEnv *env;
(*jvm)->AttachCurrentThread(jvm, (void**)&env, NULL);
Getting Class#
jclass clazz = (*env)->FindClass(env, name);
Getting Object Class#
jclass clazz = (*env)->GetObjectClass(env, object);
Getting Constructor#
jmethodID constructor = (*env)->GetMethodID(env, cls, "<init>", signature);
Getting Method#
jmethodID method = (*env)->GetMethodID(env, clazz, name, signature);
Creating New Object#
jobject object = (*env)->NewObject(env, clazz, constructor);
Invoking Void Method#
(*env)->CallVoidMethod(env, object, method);
Creating Byte Array#
jbyte *data = ...
jint size = ...
jbyteArray result = (*env)->NewByteArray(env, size);
(*env)->SetByteArrayRegion(env, result, 0, size, data);