成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Android | DownloadManager下載任務管理器

移動開發 Android
我們先獲取了DownloadManager的實例,然后創建了一個下載請求并設置了下載的標題、描述以及文件保存的位置,最后將該下載請求提交給DownloadManager來處理。

DownloadManager介紹

DownloadManager是Android系統中的一個系統服務,用于管理應用程序的下載任務。它可以處理大文件的下載、斷點續傳、網絡狀態變化時的自動恢復等功能。開發者可以通過DownloadManager提供的API來創建、查詢、暫停、恢復和取消下載任務,從而更好地管理應用程序中的下載操作。

DownloadManager常量

1. COLUMN_ID:下載項的ID
2. COLUMN_LOCAL_URI:下載文件的本地URI
3. COLUMN_MEDIA_TYPE:下載文件的媒體類型
4. COLUMN_STATUS:下載狀態
5. COLUMN_REASON:下載失敗的原因
6. COLUMN_TOTAL_SIZE_BYTES:下載文件的總大小
7. COLUMN_BYTES_DOWNLOADED_SO_FAR:已下載的文件大小
8. COLUMN_LAST_MODIFIED_TIMESTAMP:文件最后修改時間戳
9. COLUMN_TITLE:下載項的標題
10. COLUMN_DESCRIPTION:下載項的描述
11. COLUMN_URI:下載文件的URI
12. COLUMN_IS_VISIBLE_IN_DOWNLOADS_UI:下載項是否在下載管理器界面可見
13. COLUMN_FILE_NAME_HINT:下載文件的文件名提示
14. COLUMN_MEDIAPROVIDER_URI:下載文件在媒體提供程序中的URI
15. COLUMN_DESTINATION_URI:下載文件的目標URI
16. COLUMN_VISIBILITY:下載項的可見性
17. COLUMN_ALLOWED_NETWORK_TYPES:允許的網絡類型
18. COLUMN_ALLOW_METERED:是否允許計量網絡下載
19. COLUMN_IS_VISIBLE_IN_DOWNLOADS_UI:下載項是否在下載管理器界面可見
20. COLUMN_IS_DOWNLOADS_UI:下載項是否在下載管理器界面顯示
21. COLUMN_BYPASS_RECOMMENDED_SIZE_LIMIT:是否繞過推薦的大小限制
22. COLUMN_MEDIA_SCANNED:媒體是否已掃描
23. COLUMN_DELETED:下載項是否已刪除
24. COLUMN_ERROR_MSG:下載錯誤消息
25. COLUMN_ALLOW_ROAMING:是否允許漫游下載
26. COLUMN_IS_PUBLIC_API:是否為公共API
27. COLUMN_COOKIE_DATA:cookie數據
28. COLUMN_USER_AGENT:用戶代理
29. COLUMN_REFERER:引用頁
30. COLUMN_TOTAL_BYTES:下載文件的總字節數
31. COLUMN_CURRENT_BYTES:當前已下載的字節數
32. COLUMN_ETAG:下載文件的ETag
33. COLUMN_MEDIA_SCANNED:媒體是否已掃描
34. COLUMN_DELETED:下載項是否已刪除
35. COLUMN_ERROR_MSG:下載錯誤消息
36. COLUMN_ALLOW_ROAMING:是否允許漫游下載
37. COLUMN_IS_PUBLIC_API:是否為公共API
38. COLUMN_COOKIE_DATA:cookie數據
39. COLUMN_USER_AGENT:用戶代理
40. COLUMN_REFERER:引用頁
41. COLUMN_TOTAL_BYTES:下載文件的總字節數
42. COLUMN_CURRENT_BYTES:當前已下載的字節數
43. COLUMN_ETAG:下載文件的ETag

DownloadManager使用

使用DownloadManager來管理下載任務,你需要首先獲取DownloadManager的實例,然后創建一個下載請求并將其提交給DownloadManager來處理。示例代碼:

// 獲取DownloadManager實例
DownloadManager downloadManager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);

// 創建下載請求
DownloadManager.Request request = new DownloadManager.Request(Uri.parse("下載鏈接"));
request.setTitle("下載標題");
request.setDescription("下載描述");
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "文件名");

// 將下載請求提交給DownloadManager
long downloadId = downloadManager.enqueue(request);

我們先獲取了DownloadManager的實例,然后創建了一個下載請求并設置了下載的標題、描述以及文件保存的位置,最后將該下載請求提交給DownloadManager來處理。處理完成后,DownloadManager會返回一個唯一的下載ID,你可以使用這個ID來跟蹤下載任務的狀態或者取消下載任務。

// 查詢下載任務狀態
DownloadManager.Query query = new DownloadManager.Query();
query.setFilterById(downloadId);
Cursor cursor = downloadManager.query(query);
if (cursor.moveToFirst()) {
    int status = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS));
    // 根據狀態來處理下載任務
}

// 取消下載任務
downloadManager.remove(downloadId);

可以使用以下代碼來查看文件下載情況:

DownloadManager downloadManager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
DownloadManager.Query query = new DownloadManager.Query();
query.setFilterByStatus(DownloadManager.STATUS_SUCCESSFUL);

Cursor cursor = downloadManager.query(query);
if (cursor.moveToFirst()) {
    int status = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS));
    String localUri = cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_LOCAL_URI));
    String mimeType = cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_MEDIA_TYPE));
    long fileSize = cursor.getLong(cursor.getColumnIndex(DownloadManager.COLUMN_TOTAL_SIZE_BYTES));
    // 在這里處理文件下載情況
}
cursor.close();

這段代碼使用DownloadManager來查詢已經下載完成的文件,并獲取了文件的狀態、本地URI、MIME類型和文件大小等信息。


責任編輯:武曉燕 來源: 沐雨花飛蝶
相關推薦

2020-03-12 18:34:30

Windows 10Windows任務管理器

2011-06-30 09:31:54

Chrome OS

2020-10-12 09:00:00

Firefox任務管理器瀏覽器

2013-03-29 12:52:14

Android位置管理

2011-06-06 09:57:43

任務管理器

2009-12-23 08:50:27

Fedora任務管理器

2012-04-20 14:44:11

JavaScript

2021-03-05 14:02:51

LinuxWindows管理器

2016-09-09 10:09:47

2020-08-10 08:26:26

Windows 10Windows微軟

2022-01-21 07:15:19

微軟Windows 11任務管理器

2009-02-18 20:39:34

2023-12-19 22:48:22

2012-12-31 10:36:58

Android開發RelativeLay布局

2010-12-28 14:53:29

服務器管理器

2021-02-03 07:56:03

微軟Edge瀏覽器

2009-07-28 08:43:13

2012-11-06 13:31:04

Windows 8任務管理器

2022-02-17 15:59:10

Windows 11任務管理器

2022-07-04 15:50:41

Windows 11微軟任務管理器
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日本a级大片 | 99久久婷婷国产综合精品电影 | 91久久国产综合久久 | 国产精品99久久久久久宅男 | 欧美日韩精品久久久免费观看 | 久久成人一区 | 青青草视频网 | 日韩一区二区av | 91精品国产自产精品男人的天堂 | 久久久久久一区 | 成人免费区一区二区三区 | 成人精品视频 | 国产精品免费一区二区三区四区 | 精品中文在线 | 一级毛片成人免费看a | 天天干天天插天天 | 久久av网 | 亚洲手机视频在线 | 久久亚洲国产精品 | 午夜视频在线观看网址 | 日韩在线免费观看视频 | 一区二区三区在线 | 国产伦精品一区二区三区高清 | 国产精品久久久久久久久图文区 | 成人影院在线观看 | 欧美中文一区 | 午夜精品久久 | 夜夜摸天天操 | 精品一二区 | 欧美女优在线观看 | 国产亚洲二区 | 91在线导航 | www.久| 在线观看国产wwwa级羞羞视频 | 亚洲精品日韩精品 | 亚洲精品在线免费观看视频 | 亚洲男女视频在线观看 | 国产精品一区在线 | 国产成人免费视频网站高清观看视频 | 天天av综合| 色噜噜色综合 |