多執行緒斷點下載流程圖:
多執行緒斷點續傳下載原理介紹:
在下載的時候多個執行緒併發可以佔用伺服器端更多資源,從而加快下載速度
手機端下載資料時難免會出現無訊號斷線、電量不足等情況,所以需要斷點續傳功能
根據下載資料長度計算每個執行緒下載的資料位置,程式中開啟多個執行緒併發下載
在請求頭中設定Range欄位就可以獲取指定位置的資料,例如:Range:
在下載過程中記錄每個執行緒已拷貝資料的數量,如果下載中斷,下次啟動時從記錄位置繼續下載
例項圖:
1.1 預設為圓形進度條,水平進度條需要配置style屬性,android:attr/progressBarStyleHorizont
1.2 當點選下載按鈕時開啟多執行緒下載,下載過程中修改進度條進度
二. 斷點續傳
3.3 主執行緒中建立Handler,重寫handleMessage()方法
3.4 新執行緒中使用Handler傳送訊息,主執行緒即可收到訊息,並且執行handleMessage()方法
本文來自新浪部落格