0

我希望 AsyncTask 下载我作为数组获得的多个文件。使用此代码 AsyncTask 只工作一次,并忽略数组的其余部分。

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);
4

1 回答 1

3

你真的不需要声明String[]为泛型参数,而只是一个String

AsyncTask<String, Integer, String>

doInBackground(String... sUrl)默认情况下需要一个类型参数的数组。

此外,...称为varargs,它表示一个可选参数数组。

于 2013-05-21T14:37:44.290 回答