Skip to main content

How to pause using DownloadManager?


I want to achieve that when downloading, it can be paused, stopped by user. How can I achieve this with DownloadManager?



Source: Tips4allCCNA FINAL EXAM

Comments

  1. You can use the DownloadManager API from Android itself. here are you examples for using DownloadManager.

    Vogella.de

    android-er Blog

    By CommonsWare

    ReplyDelete
  2. Do you mean to do this in Web Application ?

    I am also thinking about the same thing. This might have been possible with flash or sliverlight etc., but in pure HTML?

    On the server side we can use RandomAccessFileReader(Apache) or similar FileReader (in bytes) to access file and write to output stream. We can remember how much bytes was downloaded in previous session by the user too. But the problem is there is no standard way to save file to disk in the client's local file system. You can use ActiveX Object in IE to write some file provided it is a sequential (plain text) file and not binary file(like mp3, flv etc). But this ActiveX is not a solution. So you may need to design something like 'Downloader' for you website. Just like Youtube Downloader.

    ReplyDelete
  3. It may be that "pausing" isn't exactly necessary for you? As DownloadManager actually doesn't need to pause to be resumed.

    Instead you may be getting tripped up with resuming? See if this helps:

    how to resume an interrupted download Where the solution is implementing a Range request header...

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


    Unless you need to actually allow "pausing" (because of switching file download priority, maintaining a list or something else more complicated) and not just provide resuming capability, that should help.

    ReplyDelete

Post a Comment

Popular posts from this blog

Slow Android emulator

I have a 2.67 GHz Celeron processor, 1.21 GB of RAM on a x86 Windows XP Professional machine. My understanding is that the Android emulator should start fairly quickly on such a machine, but for me it does not. I have followed all instructions in setting up the IDE, SDKs, JDKs and such and have had some success in staring the emulator quickly but is very particulary. How can I, if possible, fix this problem?