Fully featured file download manager for iOS

Marky picture Marky · Aug 29, 2012 · Viewed 8.9k times · Source

I've been looking for a nice file download manager I can use in my app and haven't been able to find anything with the features I want...

  • queue multiple async downloads
  • control number of simultaneous downloads
  • block based callbacks include success, fail and progress percentage updates
  • cancel and pause/resume
  • resume interrupted downloads (e.g. when the app is force closed)

the following would be nice bonuses

  • remaining time estimation
  • ability to change order in queue
  • handling of long term storage/deletion

Does anyone know of anything like this? If there's nothing out there I guess I can roll my own and open source it.

Thanks!

Answer

user529758 picture user529758 · Aug 29, 2012

Here's mine. Although the callbacks are delegate-based rathrer than block-based, you can easily adapt this. You can also easily add code to limit number of parallel downloads by examining the number of current downloads and only adding a new if it's less than the limit. It also has remaining time estimation and nicely formatts data sizes. Using NSFileHandle, it doesn't eat up your memory, instead it writes to files directly.