RxDownloader

Additional

Language
Java
Version
1.0.1 (Oct 20, 2016)
Created
Oct 29, 2015
Updated
Jul 11, 2018
Owner
Esa Firman (esafirm)
Contributors
Esa Firman (esafirm)
Timothy Kist (Kisty)
yaziedda
jackwakefield
VladislavNikolaev
romanborisenko
6
Activity
Badge
Generate
Download
Source code
APK file

Promotion

RxDownloader

An Rx wrapper for Download Manager in Android

Usage

To download a file into your download directory (Environment.DOWNLOADS) use download()

String url = "https://upload.wikimedia.org/wikipedia/en/e/ed/Nyan_cat_250px_frame.PNG";
RxDownloader.getInstance(appContext)
            .download(url, "nyancat photo", "image/jpg") // url, filename, and mimeType
            .subscribe(path ->{
                // Do what you want with downloaded path
             }, throwable -> {
                // Handle download faile here
             });

To download file into the directory on the filesystem (Context.getFilesDir()) use downloadInFilesDir()

String url = "https://upload.wikimedia.org/wikipedia/en/e/ed/Nyan_cat_250px_frame.PNG";
RxDownloader.getInstance(appContext)
            .downloadInFilesDir(url, "nyancat photo", "image/jpg") // url, filename, and mimeType
            .subscribe(path ->{ /* file path */  }, throwable -> { /* handle error */ });

You can always use download(DowloadManager.Request request) for more customization and configuration.

You can also look at the sample for complete usage

Gradle

allprojects {
    repositories {
        ...
        maven { url "https://jitpack.io" }
    }
}
dependencies {
    compile 'com.github.esafirm:rxdownloader:2.0.0'
}

Thanks

  • Vladislav Nikolaev who migrate this library to RxJava2
  • Everyone who has contributed code and reported issues!

License

MIT @ Esa Firman