Android開發工具類之DownloadManagerPro
昨天含含糊糊的講了一下HttpUtils,又有人跟我反饋說,別管看得懂,要照顧到看不懂的,還是要求我寫詳細一些,我想也是,能看懂的可以不看,重點就是讓人好好得到學習的,眾口難調嘛,以後我寫東西儘量都寫的詳細一些,適合更多小白使用者看,才能更好,更能提高大家的能力。如果你能看懂,也不要跟我說沒必要解釋的什麼的了,因為畢竟要讓大家都弄明白。
言歸正傳,今天我們來詳細的講一下DownloadManagerPro這個工具類,說白了,這個工具類就是Android系統下載管理DownloadManager的一個增強類,提供了一些增強方法。或許大家不太瞭解這個安卓系統自帶的DownloadManager這個類,我先做一個簡單介紹吧。
DownloadManager是系統開放給第三方應用使用的類,包含兩個靜態內部類DownloadManager.Query和DownloadManager.Request。DownloadManager.Request用來請求一個下載,DownloadManager.Query用來查詢下載資訊。用downloadManager的enqueue介面進行下載,返回唯一的downloadId。注意這個id,我們會在DownloadManagerPro這個工具增強類中用到。正題來了,下面就介紹一下這個DownloadManagerPro。
DownloadManagerPro這個增強類中有一下這些方法,我會對這些方法進行一個逐一的解釋,希望大家不要嫌囉嗦。
1、int[] getBytesAndStatus(long downloadId)
這個方法就是傳入我們上面所說的那個enqueue介面返回的下載id,可以獲取到這個下載檔案已經下載了多大,總共多大,以及下載狀態,返回資訊是一個int陣列,包含了這三個資訊。
2、int[] getDownloadBytes(long downloadId)
這個方法就是傳入下載id,可以獲取到已經下載了多大,總共這個下載檔案有多大的資訊,返回資訊也是一個int陣列。
3、int getErrorCode(long downloadId)
這個方法是傳入下載id,得到的返回資訊就是這個檔案下載失敗的錯誤程式碼,error code。
4、String getFileName(long downloadId)
這個方法就是傳入下載id,返回下載檔案的名字
5、int getPausedReason(long downloadId)
這個方法是傳入下載id,返回下載停止的原因
6、int getReason(long downloadId)
這個方法就是傳入下載id,返回下載失敗或者停止的錯誤程式碼
7、int getStatusById(long downloadId)
這個方法就是傳入下載id,返回下載資訊的狀態碼
8、String getUri(long downloadId)
這個方法就是傳入下載id,返回下載檔案的uri
9、static boolean isExistPauseAndResumeMethod()
這個方法就是判斷在DownloadManager中是否存在停止下載的和重新下載的方法
10、int pauseDownload(long... ids)
這個方法就是傳入多引數的id,停止響應下載id的下載
11、int resumeDownload(long... ids)
這個方法就是傳入多引數的下載id,繼續或者恢復停止的下載
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4662/viewspace-2816603/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Android開發 - DialogFragment 類解析AndroidFragment
- Android開發 - BrowseFragment 類解析AndroidFragment
- 聚焦 Android 11: Android 開發者工具Android
- Android工具類庫Android
- android開發 之 Bolts-AndroidAndroid
- Android API開發之OpenGL開發之Android OpenGL STL詳解AndroidAPI
- Android開發 - Movie 類詳解Android
- Android開發 - RecyclerView 類詳解AndroidView
- DateUtils Android時間工具類Android
- 星雲 Android 開發工具箱Android
- android 開發之 APT 技術AndroidAPT
- Android JNI開發系列之配置Android
- Android開發之常用佈局Android
- Java&Android開發-淺析ServiceLoader類JavaAndroid
- java工具類之編碼轉換工具類Java
- Android開發 - 儲存輔助類 SharedPreferences 解析Android
- Android NDK開發之JNI基礎Android
- Laravel 開發者工具類 - Laravel-debugbar。Laravel
- Java開發常用的16個工具類Java
- Java之Collections工具類Java
- python 開發工具IDE 之 thonnyPythonIDE
- Android 擼一個快取工具類Android快取
- 併發工具類
- Android 效能分析工具之TraceViewAndroidView
- Mac之Android Studio開發NDK入門MacAndroid
- Android開發之指令碼替換PackageNameAndroid指令碼Package
- Android Native 開發之 NewString 與 NewStringUtf 解析Android
- Android之Activity基類封裝Android封裝
- Java 最全工具類(後端開發必備)Java後端
- 併發工具類(五) Phaser類
- 開發一款Android APP所用到的工具AndroidAPP
- Android開發好用的依賴庫和工具收集Android
- Android常用工具類的封裝Android封裝
- Android開發 - (介面卡)Adapter類中BaseAdapter實現類詳細解析AndroidAPT
- Android開發 - (介面卡)Adapter類中SimpleAdapter實現類詳細解析AndroidAPT
- 併發工具類——Semaphore
- Android開發之跟蹤應用更新大小Android
- Android之五大應用開發框架Android框架