ysn003 2015-01-06 02:07 采纳率: 100%
浏览 2052
已采纳

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;
            }
        }
  • 写回答

7条回答 默认 最新

  • ysn003 2015-01-15 19:29
    关注

    始终想不通原因,换了一个处理方式,解决了:

                public void onPageFinished(WebView view,final  String url) {
                //将页面的文本用JS alert 弹出
                    view.loadUrl("javascript:alert(document.body.innerHTML)");
                    return;
                }
    
                //WebChromeClient 内的方法,页面弹出 alert时会调用 
                public boolean onJsAlert(WebView view, String url,final  String message,
                    JsResult result) {              
                    //这里面的message 就是页面内容
                System.out.println("onJsAlert   result: "+result+"  message:"+message);
                result.cancel();//直接隐藏掉。OK 看起来结果跟上面的方法是一样的
                return true;
            }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部