如果在执行本机java API时抛出任何异常,如何在JavaScript中处理异常

时间:2013-05-06 16:22:33

标签: javascript android cordova java-native-interface phonegap-plugins

我正在Android上使用Phonegap构建混合应用程序,他们使用Android WebView从JavaScript调用java API。

如果在执行Java Native API时发生任何异常,我想在JavaScript中捕获异常。当我执行它时,它可以工作,但是当Java Native代码抛出异常应用程序崩溃并在日志

中给出以下异常时
05-06 21:28:03.230: W/dalvikvm(705): JNI WARNING: JNI method called with exception raised

05-06 21:28:03.239: E/dalvikvm(705): VM aborting

Java Native Code:

public Object callNative() throws Exception {
    throw new Exception("Exception Occured");
}

JavaScript代码:

try {
   window.callNative();
} catch(e) {
    // Exception Caught
}

1 个答案:

答案 0 :(得分:1)

我不相信你是用JavaScript调用你想要的方法:

window.callNative("STRING PARAMETER VALUE");

根据您的示例,您正在调用另一种可能未声明的方法:

window.callNative();

更改您的代码以调用我在第一个代码块中提供的方法。