js与Java互调,中兴V5这款手机报错:NPObject deleted

y_chengyong 2015-07-29 03:46:34
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 } }); }
但是测试后,发现都没起作用,求救各路大神,小弟在此谢过!
...全文
204 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2017-05-12
  • 打赏
  • 举报
回复
试一下这个方法,在我这个项目里可以。
在onLoadResource(而不是onPageFinished)末尾重新调用一次:
webview.addJavascriptInterface(obj, "MY_JAVA_OBJ");
古古天 2015-11-09
  • 打赏
  • 举报
回复
这个问题是网页用了iframe引起的
古古天 2015-11-06
  • 打赏
  • 举报
回复
我也遇到了  有没有解决办法

80,471

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧