我有一个类,其中包含另一个类的对象。当我通过jobject将该对象传递给我的jni函数时,getFieldID显示找不到该字段。变量名肯定是正确的。
jfieldID fidPopulation = (*env)->GetFieldID(env,cls,"mPopulation","I");
我有一个类,其中包含另一个类的对象。当我通过jobject将该对象传递给我的jni函数时,getFieldID显示找不到该字段。变量名肯定是正确的。
jfieldID fidPopulation = (*env)->GetFieldID(env,cls,"mPopulation","I");
Java_MyTestFunction( JNIEnv *env, jobject objectA, jobject objectB) {
jclass cls = (*env)->FindClass(env, "org/demopath/ClassB");
jfieldID fid = (*env)->GetFieldID(env, cls, "mPopulation ", "I");
jint population = (*env)->GetIntField(env, objectB, fid);
}
我手动编写了签名,因此可能会有一些错误。请始终使用生成的签名。