When downloading a large file, if the user's internet speed is slow, the process can become quite lengthy, and any unexpected events (such as disconnection or power outage) can result in download failure.
Therefore, we need:
- Support for resumable download feature for HTTP downloads.
- Displaying the total file size at the start of the download.