如何使用DownloadManager暂停?

2022-09-04 04:10:12

我想在下载时实现这一点,它可以被用户暂停,停止。我如何使用DownloadManager实现这一点?


答案 1

您可以从队列中删除下载。然后,您可以再次启动它,在将HTTP标头重新添加到队列时传递HTTP标头(如提到的TryTryAgain)。我不认为目前这可以更容易地完成。Range


答案 2

也许“暂停”对你来说并不完全必要?由于DownloadManager实际上不需要暂停即可恢复。

相反,您可能会因为恢复而绊倒?看看这是否有帮助:

如何恢复中断的下载解决方案正在实现 Range 请求标头...

// Open connection to URL.
HttpURLConnection connection =
        (HttpURLConnection) url.openConnection();

// Specify what portion of file to download.
connection.setRequestProperty("Range", "bytes=" + downloaded + "-");
// here "downloaded" is the data length already previously downloaded.

// Connect to server.
connection.connect();

除非您需要实际允许“暂停”(因为切换文件下载优先级,维护列表或其他更复杂的内容),而不仅仅是提供恢复功能,否则这应该会有所帮助。


推荐