以下是JnIheper.cpp 里面的代码:
jclass _getClassID(const char *className) {
if (NULL == className) {
return NULL;
}
JNIEnv* env = cocos2d::JniHelper::getEnv();
jstring _jstrClassName = env->NewStringUTF(className);
jclass _clazz = (jclass) env->CallObjectMethod(cocos2d::JniHelper::classloader,
cocos2d::JniHelper::loadclassMethod_methodID,
_jstrClassName);
if (NULL == _clazz) {
LOGD("Classloader failed to find class of %s", className);
}
env->DeleteLocalRef(_jstrClassName);
return _clazz;
}
2.2.3里面用的代码:
static jclass getClassID_(const char *className, JNIEnv *env)
{
JNIEnv *pEnv = env;
jclass ret = 0;
do
{
if (! pEnv)
{
if (! getEnv(&pEnv))
{
break;
}
}
ret = pEnv->FindClass(className);
if (! ret)
{
LOGD("Failed to find class of %s", className);
break;
}
} while (0);
return ret;
}
2.2.3里面好好的代码,非得重写,还写出一个有错误的版本,真心吐血啊,请你们不要把时间花在这些无聊的事情上面。
还有把namespace gui 改成namespaceui. 这种现好表现的程序员应尽快开除。