2013-08-05 77 views
0

我正在使用AsyncTask進行多個文件傳輸。 不同的文件路徑存儲在一個數組列表中,我的問題是如何發送隊列中的所有文件(按順序)。如何在AsyncTask中順序執行多個任務(隊列)

enter image description here

@Override 
protected void onResume() { 
    // TODO Auto-generated method stub 
    super.onResume(); 
    /* 
    * Some logic 
    */ 
    new XYZAsyncTask (mString).executeOnExecutor(AsyncTask.SERIAL_EXECUTOR); 
} 

私有類XYZAsyncTask擴展的AsyncTask {

ArrayList<String> mArray; 

    @Override 
    protected Void doInBackground(ArrayList... params) { 
     /* 
     * 
     * Some logic 
     */ 
     checkSizeAndSendFile(); 
     return null; 
    } 
+0

請發表您使用的是最新的代碼。 – ObieMD5

回答

4

我做使用的AsyncTask

多個文件傳輸

這不太可能是一個好主意。使用IntentService,以便您的過程可能足夠長,以完成文件傳輸。作爲一個附帶好處,IntentService有一個內置隊列—只需使用單獨的startService()呼叫進行每次傳輸。

0

也許我沒有得到你的問題,但爲什麼不只是通過文件名,並在它們之間迭代,像這樣:

@Override 
protected Void doInBackground(String... files) { 
    for (String file : files) { 
    // handle each individual files here 
    } 
}