[core] get full exception info (#955)
This commit is contained in:
parent
bde68a44cb
commit
6dfaf67a07
|
|
@ -156,9 +156,10 @@ concept ScopeOrObject = ScopeOrRaw<jobject, T>;
|
|||
inline ScopedLocalRef<jstring> ClearException(JNIEnv *env) {
|
||||
if (auto exception = env->ExceptionOccurred()) {
|
||||
env->ExceptionClear();
|
||||
static jmethodID toString = env->GetMethodID(env->FindClass("java/lang/Object"), "toString",
|
||||
"()Ljava/lang/String;");
|
||||
auto str = (jstring) env->CallObjectMethod(exception, toString);
|
||||
static jclass log = (jclass) env->NewGlobalRef(env->FindClass("android/util/Log"));
|
||||
static jmethodID toString = env->GetStaticMethodID(log, "getStackTraceString",
|
||||
"(Ljava/lang/Throwable;)Ljava/lang/String;");
|
||||
auto str = (jstring) env->CallStaticObjectMethod(log, toString, exception);
|
||||
env->DeleteLocalRef(exception);
|
||||
return {env, str};
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue