我有类似的东西
final WebView w=(WebView)findViewById(R.id.webView1);
w.loadUrl("http://somepage.com");
有没有办法在某个时刻获取WebView中显示的html页面? 我想把这个html页面作为字符串变量。
关键是我想在客户端执行javascript后得到html代码......
任何指导方针?
答案 0 :(得分:15)
我知道的一种方式;
活动中的decleration javascript处理程序
class LoadListener{
public void processHTML(String html)
{
Log.e("result",html);
}
}
配置完webview后;
webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface(new LoadListener(), "HTMLOUT");
比webview客户端;
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
return true;
}
@Override
public void onPageStarted(WebView view, String url,
Bitmap favicon) {
}
public void onPageFinished(WebView view, String url) {
view.loadUrl("javascript:window.HTMLOUT.processHTML('<html>'+document.getElementsByTagName('html')[0].innerHTML+'</html>');");
}
});
答案 1 :(得分:1)