js与Java互调,中兴V5这款手机报错:NPObject deleted
js与Java互调的使用的框架是ponto,github链接:https://github.com/Wikia/ponto
前提:小米,魅族,华为,三星,一加,联想,酷派,vivo,oppo,nexus都测试过没问题,唯独中兴手机,只可以调2次,调到第三次直接挂了,异常信息:I/chromium﹕ [INFO:CONSOLE(1)] "Uncaught ReferenceError: NPObject deleted"。
网上搜了下,大致有两种说法:
1、(http://blog.csdn.net/houshunwei/article/details/46344545)
问题原因:
webview.addJavascriptInterface(obj, "MY_JAVA_OBJ"); 绑定了webview的window.MY_JAVA_OBJ。
但是在调用了 onPageFinished 之后,这个绑定失效了!
方法是,在onPageFinished末尾重新调用一次:
webview.addJavascriptInterface(obj, "MY_JAVA_OBJ");
2、(http://stackoverflow.com/questions/16758397/sometimes-throws-uncaught-error-error-calling-method-on-npobject-on-android)
runOnUiThread(new Runnable() { public void run() { //Code that interact with UI } }); }
但是测试后,发现都没起作用,求救各路大神,小弟在此谢过!