android - 如何检查文件是否在下载管理器队列中?

标签 android android-download-manager

用户必须下载多个文件,这些文件将在单击按钮时开始。该代码将检查文件是否已存在,如果不存在则将其添加到下载队列。我正在将所有不存在的文件添加到下载队列中。

但是如果用户立即再次点击该按钮,文件将重新添加到下载队列中。那么如何检查文件是否添加到下载管理器队列中呢?如果再添加,则不会重新添加该文件。

最佳答案

你应该使用DownloadManager.Query

这是您可以引用的例子Download manager example

示例代码

DownloadManager.Query query = null;
Cursor c = null;
DownloadManager downloadManager = null;
downloadManager = (DownloadManager)getSystemService(Context.DOWNLOAD_SERVICE);
query = new DownloadManager.Query();
 if(query!=null) {
            query.setFilterByStatus(DownloadManager.STATUS_FAILED|DownloadManager.STATUS_PAUSED|DownloadManager.STATUS_SUCCESSFUL|
                    DownloadManager.STATUS_RUNNING|DownloadManager.STATUS_PENDING);
        } else {
            return;
        }
c = downloadManager.query(query);
if(c.moveToFirst()) { 
int status = c.getInt(c.getColumnIndex(DownloadManager.COLUMN_STATUS)); 
switch(status) { 
case DownloadManager.STATUS_PAUSED: 
break; 
case DownloadManager.STATUS_PENDING: 
break; 
case DownloadManager.STATUS_RUNNING: 
break; 
case DownloadManager.STATUS_SUCCESSFUL: 
break;  
}
}

关于android - 如何检查文件是否在下载管理器队列中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41626368/

相关文章:

android - 为应用引擎端点对象化 OfyService NoClassDefFoundError

java - 在 Android 上的浏览​​器中从 HTTPS 下载文件

android - 由 : java. lang.IllegalStateException : Unable to create directory in Android 6. 0 设备引起

android - 下载图像并将其存储在android中的图库应用程序中

java - "error: package com.google.firebase.iid does not exist"更新 Firebase Crashlytics 依赖项后

java - 将 Dao 作为静态成员存储在类中是否安全?

android - 如何在 Android 上正确显示泰语方言?

android - Webview 在右侧添加空白

android - 在 Android 中下载和暂停、恢复大文件的最佳方式?