2013-05-21 81 views
0

我希望AsyncTask能夠下載我作爲數組獲取的多個文件。 使用此代碼,AsyncTask只能工作一次,並忽略數組的其餘部分。AsyncTask不能與數組一起工作(android)

private class DownloadFiles extends AsyncTask<String[], Integer, String> { 
     @Override 
     protected String doInBackground(String[]... sUrl) { 

      for (int p = 0; p < sUrl.length; p++) { 
       for (int i=0;i<sUrl[p].length;i++) { 
        getFileToDown(sUrl[p][i]); 
       } 
      } 

例如我想送比數組更多:

downloadFiles.execute(databasesArray,imagesArray,etc); 
+1

錯誤...'字符串... urls'已經*數組了嗎? – dmon

回答

3

你真的不需要聲明String[]作爲通用的參數,而只是一個String

AsyncTask<String, Integer, String> 

doInBackground(String... sUrl)默認情況下,預計一個類型參數的數組。

另外,...被稱爲varargs,它代表可選的參數的數組。