1. 程式人生 > >Android Webview實現檔案下載功能

Android Webview實現檔案下載功能

               

    在做美圖欣賞Android應用的時候,其中有涉及到Android應用下載的功能,這個應用本身其實也比較簡單,就是通過WebView控制呼叫相應的WEB頁面進行展示。剛開始以為和普通的檔案下載實現,只需要一個連結,然後點選就可以實現下載了,可是放到手機上試的時候,點選下載連結一點反應都沒有,在普通頁面裡面點選是好的,且點選其它的普通連結是可以正常工作的。原來是因為WebView預設沒有開啟檔案下載的功能,如果要實現檔案下載的功能,需要設定WebView的DownloadListener,通過實現自己的DownloadListener來實現檔案的下載。具體操作如下:

    1、設定WebView的DownloadListener:

    webView.setDownloadListener(new MyWebViewDownLoadListener());

    2、實現MyWebViewDownLoadListener這個類,具體可以如下這樣:    

private class MyWebViewDownLoadListener 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本身進行的檔案下載,不過,這也基本上滿足我們的應用場景了。