概述
本篇我們我們就來聊聊多線程下載框架,先聊聊我們框架的特點:
多線程
多任務
斷點續傳
支持大文件
可以自定義下載數據庫
高度可配置,像超時時間這類
業務數據和下載數據分離
下面我們在說下該框架能實現那些的應用場景:
該框架可以很方便的下載單個文件,並且顯示各種狀態,包括開始下載,下載中,下載失敗,刪除等狀態。
也可以實現常見的需要下載功能應用,比如:某某手機助手,在該應用內可以說是下載是核心功能,所以對框架的穩定性,代碼可靠性,框架擴展性依賴很大,所以該框架真是從這種出發點而生的。通常這類應用的表示形式分三個頁面需要用到下載功能,一個列表用來顯示來自業務數據的列表,在該列表右邊可以點擊單個條目,或者多選實現下載,點擊每個條目進入詳情,同時還有個一個下載管理,包括大概兩個界面,正在下載,下載完成的,在這幾個界面都需要一個核心的功能就是都可以暫停,恢復,刪除並且能顯示下載進度。在列表一個最重要的問題就是界面刷新,如果每次更新都刷新整個列表,那麼這將是異常災難,而我們這個框架正好解決了該問題,採用了回調單個條目並更新該條目的進度和狀態。
該項目狀態
該項目的雛形始於14年的公司項目需要用到多線程下載,但當時實現的單線程多任務斷點續傳,後面不斷完善,在這之間遇到過很多坑,也對一個下載框架有了更深的認識,所以在16年又重寫了該框架。
項目的Github地址:https://github.com/lifengsofts/AndroidDownloader
官方項目中文文檔:https://github.com/ixuea/AndroidDownloader/blob/master/docs/zh.md。
項目還處於發展狀態,但已經趨於穩定,並且有一定的編碼規範,同時採用了多個開源項目的質量控制方案以保證每次代碼提交的可靠性。
支持
如果大家使用過程中有什麼問題,可以添加我們的《Android開發交流羣》QQ羣:702321063,反饋。同時大家也可以向倉庫提交Issue,PR等。
使用方法
因爲第三方平臺貼圖片,如果指定了大小,他就不清晰,不指定大小,寬度就很大,就很難看,所以大家可以查看上面的說明文檔。
相關課程
我們是愛學啊,如果有需要,大家也可以支持下我們的課程。