java.lang.Throwable: Warning: A WebView methods must be called on the same thread.
出现的问题如下所示:
04-28 10:35:45.464: W/webview(2495): java.lang.Throwable: Warning: A WebView method was called on thread 'Timer-0'. All WebView methods must be called on the UI thread. Future versions of WebView may not support use on other threads.
其实在android4.4以下版本也不会出什么问题,以前我也这么写过,但是 Android 4.1,API 17,也就是JELLY_BEAN 开始,android就针对webview中执行js代码和原生代码之间交互做了一些改动
把js调用的方法放在同一个handler.post线程执行就没有问题了
webView.loadUrl("..");
写成
webView.post(new Runnable() {
@Override
public void run() {
webView.loadUrl("javascript: alert(" + data +")");
}
});