根據Android的API參考的AsyncTask,
當執行一個異步任務,任務經過4個步驟:
- onPreExecute()之前,調用UI線程上任務被執行。此步驟通常用於設置任務,例如 ,方法是在用戶界面中顯示進度條。
- doInBackground(Params ...),在onPreExecute()完成執行後立即在後臺線程上調用。使用此步驟 執行可能需要很長時間的後臺計算。異步任務的參數 傳遞到此步驟。計算結果 必須由此步驟返回,並且將返回到最後一步 。此步驟還可以使用 publishProgress(Progress ...)發佈一個或多個進度單元。 這些值發佈在UI線程的 onProgressUpdate(Progress ...)步驟中。
- onProgressUpdate(Progress ...),在調用publishProgress(Progress ...)後在UI線程上調用。執行時間爲 未定義。在後臺計算仍在執行時,此方法用於在用戶界面中顯示任何形式的進度。例如,它可以用來爲進度條設置動畫效果,或者在 文本字段中顯示日誌。
- onPostExecute(Result),在後臺計算完成後在UI線程上調用。計算的背景 的結果作爲參數傳遞給此步驟。
由於這對UI線程是在一開始就執行的解釋onPreExecute()
。
這Guide可能會幫助你在這方面更多的幫助。
參數在那裏,因爲有人決定使用_exheritance_ _extending _類_AsyncTask_。當你擴展一個類時,你可以添加你自己的成員變量來實現新的功能。 – jahroy