【发布时间】:2020-09-21 13:35:29
【问题描述】:
我创建了一个录制应用程序,用户可以将数据上传到 google firebase 也可以恢复数据。就是这样,这就是我的应用程序所做的一切。现在我用 600 个文件(mp3 文件)测试了我的恢复过程,然后我看到当我调用下载管理器时,文件开始下载,但它们一次下载一个,这使得该过程非常耗时。那么有没有办法让下载管理器同时下载所有文件。
void startDownloading(String DownloadUrl, String DownloadPath, String DownloadName) {
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(DownloadUrl));
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE);
request.setTitle("Data");
request.setDescription("Journals");
request.allowScanningByMediaScanner();
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_HIDDEN);
request.setDestinationInExternalPublicDir(DownloadPath, DownloadName);
DownloadManager manager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
manager.enqueue(request);
}
所以我通过将文件的链接、路径和名称发送到上述方法来下载文件,然后将任务添加到 Android 设备中的 DownloadManager。 如何让下载管理器像我们在其他浏览器中一样同时下载所有这些。
【问题讨论】:
-
你不能改变这个行为,你必须实现你自己的下载管理器
标签: java android android-download-manager