jobject NewJNIObject(JNIEnv* env, const char* class_name) { jclass cls = JNIFindClass(env, class_name); //montoyo: classloader fix. if (!cls) return NULL; return NewJNIObject(env, cls); }
jclass JNIRect::getJNIClassStatic() { // TODO: handle exception if ( !_jniClass ) _jniClass = ( jclass )JNIRect::createJNIReferenceStatic( JNIFindClass( className ) ); return _jniClass; }
jobject NewJNIObject(JNIEnv* env, const char* class_name, const char* sig, ...) { jclass cls = JNIFindClass(env, class_name); //montoyo: classloader fix. if (!cls) return NULL; jmethodID initID = env->GetMethodID(cls, "<init>", sig); if (initID == 0) { env->ExceptionClear(); return NULL; } va_list ap; va_start(ap, sig); jobject obj = env->NewObjectV(cls, initID, ap); if (obj == NULL) { env->ExceptionClear(); return NULL; } return obj; }