I want to use JNI (Java Native Interface) to call a specific java configuration method, passing a short [] buffer to it as a parameter.
The phenomenon of the Java method is as follows:
public void setPcmLeft(short[] data) { pcm_l = data; }
From inside my C function, how can I call this method using JNI.
Currently my code is as follows:
void Java_com_companyName_lame_LameActivity_lameDecode(JNIEnv *env, jobject jobj) { jclass class = (*env)->GetObjectClass(env, jobj); if (class != NULL) { jmethodID setLeftDatatID = (*env)->GetMethodID(env, class, "<setPcmLeft>", "void(V)"); if (setLeftDatatID == NULL) { LOGD("(Lame) No method setLeftData"); } } }
When I ran this, setLeftDataID will be allays NULL .
Note that the jobj parameter is a passed object that contains the setPcmLeft implementation.
source share