我正在寻找一种方法来捕获在 Android (JAVA) 端引发的异常并在 Native 端处理它。
我需要做的是检测异常的类型并相应地处理它。
知道它是怎么做的吗?
我正在寻找一种方法来捕获在 Android (JAVA) 端引发的异常并在 Native 端处理它。
我需要做的是检测异常的类型并相应地处理它。
知道它是怎么做的吗?
我想到了...
if(jEnv->ExceptionCheck() == JNI_TRUE ) {
__android_log_write(ANDROID_LOG_DEBUG, "JNI", "HAS EXCEPTION");
jthrowable exceptionObj = jEnv->ExceptionOccurred();
jclass exceptionClass = cocos2d::JniHelper::getClassID("com/companyName/example/exceptions/MyException", jEnv);
if (jEnv->IsInstanceOf(exceptionObj, exceptionClass)) {
__android_log_write(ANDROID_LOG_DEBUG, "JNI", "Cought MyException!");
throw MyException();
}
}