2014-01-23 36 views
0

好吧,對於noob問題抱歉,但我已經搜索,我似乎無法得到這個工作。我想從webview中調用我的網站,但我需要下載鏈接才能真正下載文件。以下是我迄今爲止:如何處理webview中的下載鏈接

import android.app.ProgressDialog; 
import android.os.Bundle; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.webkit.WebView; 
import android.webkit.WebViewClient; 

import com.actionbarsherlock.app.SherlockFragment; 
import com.mapleleaf.mp3download.R; 

public class AppWallFragment2 extends SherlockFragment { 
@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle   

savedInstanceState) { 
    View inflate = inflater.inflate(R.layout.app_wall2, container, false); 
    WebView webView = (WebView)inflate.findViewById(R.id.webview); 
    webView.getSettings().setJavaScriptEnabled(true); 
    final ProgressDialog mProgress = ProgressDialog.show(getActivity(), 

"Loading", "Please wait for a moment..."); 
    webView.setWebViewClient(new WebViewClient() { 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 
      view.loadUrl(url); 
      return true; 
     } 
     public void onPageFinished(WebView view, String url) { 
      if(mProgress.isShowing()) { 
       mProgress.dismiss(); 
      } 
     } 
    }); 

    webView.loadUrl("http://anime.appcreator.org"); 
    return inflate; 
} 
} 

回答

0

您需要在WebViewClient定義onDownloadStart功能

public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimetype, long contentLength) { 
    //Do something with this URL (like queue a download) 
} 
+0

對不起,我在哪裏添加這個? – user3113299

+0

我是否需要這個用於我想要下載的每個鏈接?例如,如果我的webview調用的頁面有幾個mp3的? – user3113299

0

請參考下面的代碼片段:

webView.setWebViewClient(new DownloadListener() { 
    public void onDownloadStart(String url, String userAgent, 
      String contentDisposition, String mimetype, 
      long contentLength) { 
     //TODO: Handle your download task here. 
    } 
}); 

更多詳細請參閱here