Intereting Posts

Как приостановить использование DownloadManager?

Я хочу достичь этого при загрузке, он может быть приостановлен, остановлен пользователем. Как я могу добиться этого с помощью DownloadManager?

Solutions Collecting From Web of "Как приостановить использование DownloadManager?"

Вы можете удалить загрузку из очереди. Затем вы можете запустить его снова, передавая HTTP-заголовок Range при повторном добавлении его в очередь (например, TryTryAgain). Я не считаю, что в настоящее время это можно сделать более легко.

Может быть, вам не нужна «пауза»? Поскольку DownloadManager фактически не нуждается в приостановке для возобновления.

Вместо этого вы можете начать спотыкаться с возобновлением? Посмотрите, помогает ли это:

Как возобновить прерванную загрузку Где решение реализует заголовок запроса диапазона …

 // 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(); 

Если вам не нужно фактически разрешать «приостановку» (из-за переключения приоритета загрузки файлов, сохранения списка или чего-то еще более сложного), а не просто предоставления возможности возобновления, это должно помочь.

Вы хотите сделать это в веб-приложении?

Я тоже думаю об одном и том же. Возможно, это было возможно при использовании flash или sliverlight и т. Д., Но в чистом HTML?

На стороне сервера мы можем использовать RandomAccessFileReader (Apache) или аналогичный FileReader (в байтах) для доступа к файлу и записи в выходной поток. Мы можем помнить, сколько байтов было загружено в предыдущем сеансе пользователем. Но проблема заключается в том, что нет стандартного способа сохранения файла на диск в локальной файловой системе клиента. Вы можете использовать объект ActiveX в IE для записи некоторого файла, если это последовательный (обычный текстовый) файл, а не двоичный файл (например, mp3, flv и т. Д.). Но этот ActiveX не является решением. Поэтому вам может понадобиться создать что-то вроде «Downloader» для вашего сайта. Также как Youtube Downloader.