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));效果如下:
點擊確定後就可以下載了。