sgrebnov / cordova-plugin-background-download

Apache License 2.0
73 stars 77 forks source link

Background Download plugin for Apache Cordova

API provides an advanced file download functionality that persists beyond app termination, runs in the background and continues even when the user closed/suspended the application. The plugin includes progress updates and primarily designed for long-term transfer operations for resources like video, music, and large images.

Sample usage

    var fileName = "PointerEventsCordovaPlugin.wmv",
        uriString = "http://media.ch9.ms/ch9/8c03/f4fe2512-59e5-4a07-bded-124b06ac8c03/PointerEventsCordovaPlugin.wmv";

    // open target file for download
    window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fileSystem) {
        fileSystem.root.getFile(fileName, { create: true }, function (targetFile) {

            var onSuccess, onError, onProgress; // plugin callbacks to track operation execution status and progress

            var downloader = new BackgroundTransfer.BackgroundDownloader();
            // Create a new download operation.
            var download = downloader.createDownload(uriString, targetFile);
            // Start the download and persist the promise to be able to cancel the download.
            app.downloadPromise = download.startAsync().then(onSuccess, onError, onProgress);
        });
    });

Internal vs External (SD card) storage on Android

Read File Plugin quirks for more details:

Supported platforms

Quirks