如上图所示当JS调用本地方法时报错,原因让人很容易忽略。在与JS交互的方法中不能直接操作View,需要放在主线程操作才能生效。如下代码所示:
@JavascriptInterface
public void setTitle(final String title) {
HandlerUtil.runOnUiThread(new Runnable() {
@Override
public void run() {
mView.setWebTitle(title);
}
});
}
下面是断点的图片,非主线程