Android 用webview加载三方连接的时候有很多坑,记录一下 webview下载apk等文件的问题。
1.webview加载三方连接需要下载apk的时候发现点击下载按钮后无反应,或者空白或者提示不能加载url。
原因:原生的webview是没有下载文件的能力的,需要手动写一个setDownloadListener 当遇到下载文件的时候会跳到浏览器去下载 代码如下:
public class MyDownLoadListener implements DownloadListener { private Context context; public MyDownLoadListener(Context context) { this.context = context; } @Override public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimetype, long contentLength) { Log.i("tag", "url="+url); Log.i("tag", "userAgent="+userAgent); Log.i("tag", "contentDisposition="+contentDisposition); Log.i("tag", "mimetype="+mimetype); Log.i("tag", "contentLength="+contentLength); Uri uri = Uri.parse(url); Intent intent = new Intent(Intent.ACTION_VIEW, uri); context.startActivity(intent); } }最后给webview设置监听
mWebView.setDownloadListener(new MyDownLoadListener(this));效果如下:
点击确定后就可以下载了。