用户必须下载多个文件,这些文件将在单击按钮时开始。该代码将检查文件是否已存在,如果不存在则将其添加到下载队列。我正在将所有不存在的文件添加到下载队列中。
但是如果用户立即再次点击该按钮,文件将重新添加到下载队列中。那么如何检查文件是否添加到下载管理器队列中呢?如果再添加,则不会重新添加该文件。
最佳答案
你应该使用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/