#include JNIEXPORT jint JNICALL Java_com_hippo_Native_getFd(JNIEnv *env, jclass clazz, jobject fileDescriptor) { jint fd = -1; jclass fdClass = (*env)->FindClass(env, "java/io/FileDescriptor"); if (fdClass != NULL) { jfieldID fdClassDescriptorFieldID = (*env)->GetFieldID(env, fdClass, "descriptor", "I"); if (fdClassDescriptorFieldID != NULL && fileDescriptor != NULL) { fd = (*env)->GetIntField(env, fileDescriptor, fdClassDescriptorFieldID); } } return fd; }