Android 系统 WebView 使用

Android开发时要经常用到webview,本文总结了一些WebView在使用中的技巧

webView开启下载功能

有时候我们在App的webView中需要下载文件,当点击网页的下载链接发现没反应,其实是因为Android自带的Webview控件没有开启Download接口,在webView添加下面代码就可以了。

  webView.setDownloadListener(new MDownLoadListener());

  private class MDownLoadListener implements DownloadListener {

    @Override
    public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimetype,
                                long contentLength) {
        Uri uri = Uri.parse(url);
        Intent intent = new Intent(Intent.ACTION_VIEW, uri);
        startActivity(intent);
    }
}

为webview Http 请求添加 header

Webview webview=new WebView(getActivity())
Map<String, String> headers = new HashMap<>();
headers.put("params", "this is params");    
webView.loadUrl(getIntent().getStringExtra(WEBURL), headers);

loaddata乱码问题

webView.getSettings().setDefaultTextEncodingName("UTF -8");//设置默认为utf-8
webView.loadData(data, "text/html; charset=UTF-8", null);//这种写法可以正确解码
//webView.loadData(data, "text/html", "UTF -8");//API提供的标准用法,无法解决乱码问题
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,142评论 25 708
  • 内容抽屉菜单ListViewWebViewSwitchButton按钮点赞按钮进度条TabLayout图标下拉刷新...
    皇小弟阅读 46,878评论 22 665
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,510评论 0 17
  • 晚饭有点口重,又絮絮叨叨讲了很久电话,一停下,竟觉得口渴难耐。好在杯子里还有满满一杯凉白开,一股脑灌进胃里,干渴的...
    王二公子阅读 279评论 2 1