AsyncTask를 이용해서 파일 하나 다운로드 하는건 아래와 같이 구현해서 성공을 했습니다.
문제는 한번에 여러개의 파일을 다운로드를 하고 싶은건데요... 

아래 코드에서 단일 다운로드는 잘 구현되는것이므로 이용하시면 됩니다... ^^
단일다운로드의 소스코드를 아랫쪽의 다중 다운로드처럼 변경을 했는데요.... 

파일이 하나가 다운로드 되고 두번째 파일이 다운로드가 되질 않습니다.... 
어떤방법을 써야 될까요????

조언 부탁드리겠습니다.....

=========== [단일 다운로드]  ==================
호출 : new DownloadFile().execute("파일URL"
, "폰에 저장될 영문 파일명"
, "다이얼로그에 표시될 한글 파일명");

   /**
     * 파일다운로드 처리 클래스
     * 인수값 : URL, 파일명, 타이틀
     */
class DownloadFile extends AsyncTask<String, Integer, String> //인수, 경과값, 결과값
{
protected void onPreExecute() 
{
mValue = 0;
mProgress = new ProgressDialog(EtoosOnlineDownList.this);
mProgress.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
mProgress.setMessage("Wait...");
mProgress.setIndeterminate(false);
mProgress.setCancelable(false);
mProgress.setProgress(0);
mProgress.setMax(100);
mProgress.setSecondaryProgress(0);
mProgress.setButton("취소", new DialogInterface.OnClickListener() 
{
public void onClick(DialogInterface dialog, int whichButton) 
{
cancel(true);
}
});
mProgress.show();
}
protected String doInBackground(String... strData) 
{
int count;
mProgress.setMessage(strData[2]);
try {
URL url2 = new URL(strData[0]);
URLConnection conexion = url2.openConnection();
conexion.connect();
int lenghtOfFile = conexion.getContentLength();
String des = fu.AppBasicPath() + strDownFolderName + "/" + strData[1];
InputStream input = new BufferedInputStream(url2.openStream());
OutputStream output = new FileOutputStream(des);
byte data[] = new byte[1024];
long total = 0;
while ((count = input.read(data)) != -1) 
{
total += count;
publishProgress((int)(total*100/lenghtOfFile));
output.write(data, 0, count);
}
output.flush();
output.close();
input.close();
} catch (Exception e) {}
return null;
}
public void onProgressUpdate(Integer... args)
{
mProgress.setProgress(args[0]);
}
protected void onPostExecute(String result) 
mProgress.dismiss();
}
protected void onCancelled() 
{
mProgress.dismiss();
}
}


=========== [다중 다운로드]  ==================
아래의 코드를 실행하면
1/2, 진행율:100%
까지 프로그래스다이얼로그가 표시가 되는데 두번째 파일로는 넘어가지가 않습니다....
로직은 맞는듯한데...
구현이 아무래도 문제가 있는듯해 보입니다... ㅠㅠ... 
목요일 오후부터 지금 토요일 새벽까지 이것저것 해보고 있는데 영 답이 안나오네요.... 

여러 고수닙들의 조언을 부탁드리겠습니다.


호출 : new DownloadFile().execute("파일URL1", "파일URL2", "파일URL3")

class DownloadFile extends AsyncTask<String, Integer, String> //인수, 경과값, 결과값
{
                int mFileCount=0;
protected void onPreExecute() 
{
mValue = 0;
mProgress = new ProgressDialog(EtoosOnlineDownList.this);
mProgress.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
mProgress.setMessage("Wait...");
mProgress.setIndeterminate(false);
mProgress.setCancelable(false);
mProgress.setProgress(0);
mProgress.setMax(100);
mProgress.setSecondaryProgress(0);
mProgress.setButton("취소", new DialogInterface.OnClickListener() 
{
public void onClick(DialogInterface dialog, int whichButton) 
{
cancel(true);
}
});
mProgress.show();
}
protected String doInBackground(String... strData) 
{
int strDataCnt = strData.length;
int count;
String sFileName;

do
{
Looper.prepare();
try {
URL url2 = new URL(strData[mFileCount]);
URLConnection conexion = url2.openConnection();
conexion.connect();
int lenghtOfFile = conexion.getContentLength();
sFileName=UrlParsingToFileName(strData[mFileCount]);  //파일명을 얻어온다.
String des = fu.AppBasicPath() + strDownFolderName + "/" + sFileName;
InputStream input = new BufferedInputStream(url2.openStream());
OutputStream output = new FileOutputStream(des);
byte data[] = new byte[1024];
long total = 0;
while ((count = input.read(data)) != -1) 
{
total += count;
publishProgress((int)(total*100/lenghtOfFile),mFileCount+1,strDataCnt);
output.write(data, 0, count);
}
output.flush();
output.close();
input.close();
} catch (Exception e) {

}
Looper.loop();
mFileCount++;
}while(mFileCount<strDataCnt);  //다운로드 받으려는 파일의 개수만큼 반복하면서 파일을 받는다.
return null;
}
public void onProgressUpdate(Integer... args)
{
mProgress.setProgress(args[0]);
mProgress.setMessage(args[1]+"/"+args[2]+", 진행율:"+args[0]+"%");
if(args[0]==100)
{
//파일하나를 다 받았으면 디비에 저장한다.

}
}
protected void onPostExecute(String result) 
mProgress.dismiss();
}
protected void onCancelled() 
{
mProgress.dismiss();
}
}