JNIEnv常用方法

基础

        有时候需要往jni层传递的有java对象,想使用java对象中方法,此时就类似于java中的反射。

常用方法

        GetObjectClass:获取某个对象的的Class对象。返回值为jclass类型。

        GetMethodID:获取某个方法的id,要执行该方法时需要该方法的返回值。第二个参数为该方法所处类的class对象,即GetObjectClass的返回值;第三个参数表示方法名,第四个参数表示方法签名。

        CallObjectMethod执行object中的某个返回值为引用数据类型的方法。从第四个参数开始分别表示传入到该方法中的参数。

        CallIntMethod执行object中某个返回值为int类型的方法,其余的同CallObjectMethod一样。与之类似的还有CallFloatMethod,CallBooleanMethod等。

        GetFieldID:与GetMethodID类似,只不过是获取对象中的属性id。第四个参数表示该属性类型的签名。返回值为jfieldID类型。

        GetObjectField:获取引用数据类型的属性值。与其类似的有GetBooleanField,GetByteField等,分别用于获取某种基本数据类型的属性值。

        SetObjectField:与GetObjectField对应,本方法用于设置,而Get**Field用于获取。

        DeleteLocalRef:删除局部对象的引用。

        DeleteGlobalRef:删除全局对象的引用。

你可能感兴趣的:(JNIEnv常用方法)