WebView处理链接下载

因为需求的只是条目中新添加了富文本和附件,所以界面展示需要使用webview,文本和图片都还好,但是附件点击却没有效果(webview本身不支持文件的下载),所以查了查如何处理。
因为只要求能够查看就好,所以附件的处理是传递给浏览器下载,
前端只给了一个地址链接,所以用一个demo上测试一下效果如何。
步骤与问题:
1、webView直接loadurl,发现报err链接无法载入
忘了加权限
2、报一个代理链接错误,
模拟器设定了代理,Charles没有打开
3,界面白屏,什么也没有
因为是https链接,需要处理一下,简单的信任所有,

webView.setWebViewClient(new WebViewClient() {
            @Override
            public void onReceivedSslError(WebView view,
                    SslErrorHandler handler, SslError error) {
                handler.proceed();// 接受所有网站的证书
            }
});

4、附件点击没有反应
//如果访问的页面中要与Javascript交互,则webview必须设置支持Javascript
webSettings.setJavaScriptEnabled(true);
下载文件需要设置下载监听

mWebView.setDownloadListener(new DownloadListener() {
    @Override
    public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimeType, long contentLength) {
        // 处理下载事件
        Uri uri = Uri.parse(url); // url为你要链接的地址
        Intent intent = new Intent(Intent.ACTION_VIEW, uri);
        startActivity(intent);
    }
});

5、发现还是不行,点击没反应,这是为何,安装到手机看看,好了,直接跳转系统浏览器,
估计是模拟器上的浏览器也不支持文件下载,所以没法跳转,真机上其实是好的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值