android下的webview真是会遇到各种各样的怪事。
一般正常的网页地址,包含js的,只需要执行以下几句就正常使用了。
settings.setJavaScriptEnabled(true);
wv.setWebChromeClient(new WebChromeClient());
但是往往有些地址会出现各种问题:
1.页面出现滚动条,不是刚好占满屏幕
这个时候可以加上
wv.getSettings().setUseWideViewPort(true); wv.getSettings().setLoadWithOverviewMode(true); 2.加载过程中出现Uncaught TypeError: Cannot call method 'getItem' of null at这样的错误 加上这句: wv.getSettings().setDomStorageEnabled(true); 3.要允许可以下载文件,加上webview.getSettings().setAllowFileAccess(true); webview.getSettings().setPluginState(PluginState.ON);4.要监控js的alert方法 实现new WebChromeClient() { @Override public boolean onJsAlert(WebView view, String url, String message, JsResult result) { LogUtil.Debug("message:" + message + " url:" + url); result.cancel(); return true; } });5.要监控跳转,实现new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) {}