【发布时间】:2014-04-11 12:02:09
【问题描述】:
我正在使用DownloadManager 下载我的应用程序文件。
如果我再次将 url 放入 DownloadManager 中,它会下载文件并在末尾放置 -1 filename-1.file。有没有办法不让DownloadManager 再次下载它?还是我必须自己检查?
代码:
private void downloadImages(final List<SomeClass> data) {
RuntimeExceptionDao<SomeClass, Integer> someDao = DatabaseAdapter.getInstance().getSomeDao();
DownloadManager downloadmanager = (DownloadManager) mContext.getSystemService(Context.DOWNLOAD_SERVICE);
for(SomeClass someClass : data){
DownloadManager.Request request = getRequest(someClass);
someClass.mDownloadId = downloadmanager.enqueue(request);
someDao.createOrUpdate(someClass);
}
}
private DownloadManager.Request getRequest(SomeClass someClass) {
Uri uri = Uri.parse(someClass.mImage);
DownloadManager.Request request = new DownloadManager.Request(uri);
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_HIDDEN);
request.setVisibleInDownloadsUi(false);
request.setDestinationInExternalFilesDir(mContext, Environment.DIRECTORY_DOWNLOADS, car.getFileName());
return request;
}
【问题讨论】:
-
你的代码在哪里?您可以在每次下载文件之前检查该文件是否已下载。
-
我添加了代码。有没有一个很好的方法来获取路径?它应该是 Environment.DIRECTORY_DOWNLOADS。它类似于
/Files/Downloads/
标签: android download overriding download-manager