java.lang.Throwable: A WebView method was called on thread 'JavaBridge'. All WebView methods must be called on the same thread. (Expected Looper Looper (main, tid 2) {fd3fa78} called on Looper (JavaBridge, tid 13968) {7071f2a}, FYI main Looper is Looper (main, tid 2) {fd3fa78})
问题发生在js和android原生交互的过程中;
新版的Android的SDK要求在创建WebView所在的线程中操作:
解决方法
方法一:
mWebView.post(new Runnable() {
@Override
public void run() {
if (mWebView.canGoBack()) {
mWebView.goBack();
} else {
finish();
}
}
});
方法二:
runOnUiThread(new Runnable() {
@Override
public void run() {
if (mWebView.canGoBack()) {
mWebView.goBack();
} else {
finish();
}
}
});