问题描述
- android export的项目webview无法使用javascript
- 问题如下:这段代码时的:view.loadUrl();方法,我直接用运行到手机上,是可以运行的(即有回调),但是当export以后再安装到手机上,就执行不了了。回调的方法里就没有反应了,请大神赐教. 我只是想把网页上的数据读取出来而已
mWebView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view String url) {
// 重写此方法表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边
view.loadUrl(url);
return true;
}
public void onPageFinished(WebView view String url) {System.out.println(""onPageFinished = ""+url); view.loadUrl(""javascript:window.handleobj.showSource(document.body.innerHTML);""); return; } }
解决方案
始终想不通原因,换了一个处理方式,解决了:
public void onPageFinished(WebView viewfinal String url) { //将页面的文本用JS alert 弹出 view.loadUrl(""javascript:alert(document.body.innerHTML)""); return; } //WebChromeClient 内的方法,页面弹出 alert时会调用 public boolean onJsAlert(WebView view String urlfinal String message JsResult result) { //这里面的message 就是页面内容 System.out.println(""onJsAlert result: ""+result+"" message:""+message); result.cancel();//直接隐藏掉。OK 看起来结果跟上面的方法是一样的 return true; }
解决方案二:
应该不会的吧,换个手机试一下。
解决方案三:
这个 设了 吗 webSettings.setJavaScriptEnabled(true);
解决方案四:
媒体盒子 :那个不设,都运行不了的。实在想不到会是什么原因
解决方案五:
pzyoung : 就好几台手机都试了,跟手机没关系。直接用eclipse安装到手机上,是可以的。但打包出来的apk安装上以后,就不行了
解决方案六:
参考:http://blog.csdn.net/arui319/article/details/7044638
解决方案七:
好像都没人认真看题的~~~~~无语
解决方案八:
重写onPageStarted试试,看这里面执行吗
解决方案九:
danielinbiti :
这句代码:View.loadUrl(""javascript:window.handleobj.showSource(document.body.innerHTML);"");
之后就没有任何响应了,无论是可以回调或不可以回调的两个版本。我在想是不是weiview有什么权限,是打包的时候漏掉了会不会呢