Abhriya Roy
Abhriya Roy

Reputation: 1438

Cancel download in DownloadManager

I am trying to download images from an URL using the following code :-

public static void writeToDisk(Context context, @NonNull String imageUrl, @NonNull String downloadSubfolder) {
    Uri imageUri = Uri.parse(imageUrl);
    String fileName = imageUri.getPath();
    String downloadSubpath = downloadSubfolder + fileName;

    DownloadManager downloadManager = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
    DownloadManager.Request request = new DownloadManager.Request(imageUri);
    request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
    request.setDescription(imageUrl);
    request.allowScanningByMediaScanner();
    request.setDestinationUri(getDownloadDestination(downloadSubpath));

    downloadManager.enqueue(request);
}

I cant figure out how to cancel the download once it's started.

Upvotes: 11

Views: 6578

Answers (1)

CodeWalker
CodeWalker

Reputation: 2378

Use the enqueue method the get the ID as in

long downloadID = downloadManager.enqueue(request);

And, then use the remove method passing the downloadID to it.

downloadManager.remove(downloadID);

Upvotes: 13

Related Questions