Cause by:All WebView methods must be called on the same thread[问题已解决]
2015-11-03 17:52
633 查看
最近在打Android6.0系统适配的包时,出现了以下的问题:
问题: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 1)
{425f48a8} called on Looper (JavaBridge, tid 92104) {426508d0}, FYI main Looper is Looper (main, tid 1) {425f48a8})
经过多方查证,发现问题的所在是:当webview 与js交互时,在js调用后的Java回调线程并不是主线程。导致了程序出现崩溃或提示”程序无法运行“,解决此类异常,将webview操作放在主线程中即可。所以找到自己出错的地方:
public void loadUrl(final
String url) {
mClientToWebView.webview.loadUrl(url);
}
修改为:
public void loadUrl(final
String url) {
//修改无响应及点击回退或关闭按钮,页面崩溃的问题:mClientToWebView.webview.post(new Runnable()
mClientToWebView.webview.post(new Runnable() {
@Override
public void run() {
mClientToWebView.webview.loadUrl(url);
}
});
}
这样,问题就解决啦。
问题: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 1)
{425f48a8} called on Looper (JavaBridge, tid 92104) {426508d0}, FYI main Looper is Looper (main, tid 1) {425f48a8})
经过多方查证,发现问题的所在是:当webview 与js交互时,在js调用后的Java回调线程并不是主线程。导致了程序出现崩溃或提示”程序无法运行“,解决此类异常,将webview操作放在主线程中即可。所以找到自己出错的地方:
public void loadUrl(final
String url) {
mClientToWebView.webview.loadUrl(url);
}
修改为:
public void loadUrl(final
String url) {
//修改无响应及点击回退或关闭按钮,页面崩溃的问题:mClientToWebView.webview.post(new Runnable()
mClientToWebView.webview.post(new Runnable() {
@Override
public void run() {
mClientToWebView.webview.loadUrl(url);
}
});
}
这样,问题就解决啦。
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- JavaScript演示排序算法
- javascript实现10进制转为N进制数
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究
- 对一个分号引发的错误研究
- 异步流程控制:7 行代码学会 co 模块
- ES6 走马观花(ECMAScript2015 新特性)
- JavaScript拆分字符串时产生空字符的原因
- Canvas 在高清屏下绘制图片变模糊的解决方法
- IE8开发人员工具教程(二)
- 打印机无法响应的解决方法第1/2页
- 在flex中执行一个javascript方法的简单方式
- Flex结合JavaScript读取本地路径的方法
- PowerShell中执行Javascript的方法示例
- javascript asp教程第六课-- response方法