All Projects → novoda → Download Manager

novoda / Download Manager

Licence: apache-2.0
A library that handles long-running downloads, handling the network interactions and retrying downloads automatically after failures

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Download Manager

Accessibilitools
UI tools to help make your Android app accessible.
Stars: ✭ 81 (-83.2%)
Mutual labels:  novoda, open-source
Simple Chrome Custom Tabs
Easy integration of Chrome Custom Tabs into your project. Just connect it to your activity, and navigate to the external website styling your tab as you wish.
Stars: ✭ 131 (-72.82%)
Mutual labels:  novoda, open-source
Ios Demos
Examples of ios applications http://www.novoda.com/blog
Stars: ✭ 85 (-82.37%)
Mutual labels:  novoda, open-source
Bonfire Firebase Sample
An app to discuss your favourite emojis. This is a sample app built with Firebase.
Stars: ✭ 564 (+17.01%)
Mutual labels:  novoda, open-source
Sqlite Provider
Extended SQLite functionality for Android
Stars: ✭ 312 (-35.27%)
Mutual labels:  novoda, open-source
Aosp.changelog.to
Generates a change log between different aosp tags. Based on the wonderful work of @alsutton
Stars: ✭ 12 (-97.51%)
Mutual labels:  novoda, open-source
Notils
Never again need a .utils. package yur scurvy sea dogs!
Stars: ✭ 126 (-73.86%)
Mutual labels:  novoda, open-source
Gradle Build Properties Plugin
Keep your secrets secret. External build properties support for your Gradle scripts.
Stars: ✭ 110 (-77.18%)
Mutual labels:  novoda, open-source
No Player
Simplified Player wrapper for MediaPlayer and ExoPlayer
Stars: ✭ 182 (-62.24%)
Mutual labels:  novoda, open-source
Android Demos
Examples of Android applications
Stars: ✭ 1,963 (+307.26%)
Mutual labels:  novoda, open-source
Spikes
Where ideas & concepts are born & incubated
Stars: ✭ 540 (+12.03%)
Mutual labels:  novoda, open-source
Rxpresso
Easy Espresso UI testing for Android applications using RxJava.
Stars: ✭ 373 (-22.61%)
Mutual labels:  novoda, open-source
Merlin
Observes network connection status & gives callbacks
Stars: ✭ 536 (+11.2%)
Mutual labels:  novoda, open-source
Novoda
Common things for all Novoda's open source projects
Stars: ✭ 37 (-92.32%)
Mutual labels:  novoda, open-source
Bintray Release
A helper for releasing from gradle up to bintray
Stars: ✭ 1,878 (+289.63%)
Mutual labels:  novoda, open-source
Gradle Android Command Plugin
Handy commands for testing Android on CI
Stars: ✭ 349 (-27.59%)
Mutual labels:  novoda, open-source
Gradle Static Analysis Plugin
Easy setup of static analysis tools for Android and Java projects.
Stars: ✭ 398 (-17.43%)
Mutual labels:  novoda, open-source
Spotter
🔎 macOS productivity tool to launch everything
Stars: ✭ 426 (-11.62%)
Mutual labels:  open-source
Poker ai
🤖 An Open Source Texas Hold'em AI
Stars: ✭ 462 (-4.15%)
Mutual labels:  open-source
Spot mini mini
Dynamics and Domain Randomized Gait Modulation with Bezier Curves for Sim-to-Real Legged Locomotion.
Stars: ✭ 426 (-11.62%)
Mutual labels:  open-source

download-manager CI status Download from BintrayApache 2.0 Licence

A library that handles long-running downloads, handling the network interactions and retrying downloads automatically after failures. Clients can request downloads in batches, receiving a single notification for all of the files allocated to a batch while being able to retrieve the single files after downloads complete.

Adding to your project

To start using this library, add these lines to the build.gradle of your project:

repositories {
    jcenter()
}

dependencies {
    compile 'com.novoda:download-manager:<latest-version>'
}

Simple usage

  1. Create a DownloadManager:
DownloadManager downloadManager = DownloadManagerBuilder
        .newInstance(this, handler, R.mipmap.ic_launcher_round)
        .withLogHandle(new DemoLogHandle())
        .withStorageRequirementRules(StorageRequirementRuleFactory.createByteBasedRule(TWO_HUNDRED_MB_IN_BYTES))
        .build();
  1. Create a Batch of files to download:
Batch batch = Batch.with(primaryStorageWithDownloadsSubpackage, DownloadBatchIdCreator.createSanitizedFrom("batch_id_1"), "batch one title")
        .downloadFrom("http://ipv4.download.thinkbroadband.com/5MB.zip").saveTo("foo/bar", "local-filename-5mb.zip").withIdentifier(DownloadFileIdCreator.createFrom("file_id_1")).apply()
        .downloadFrom("http://ipv4.download.thinkbroadband.com/10MB.zip").apply()
        .build();
  1. Schedule the batch for download:
downloadManager.download(batch);

Snapshots

CI status Download from Bintray

Snapshot builds from develop are automatically deployed to a repository that is not synced with JCenter. To consume a snapshot build add an additional maven repo as follows:

repositories {
    maven {
        url 'https://dl.bintray.com/novoda-oss/snapshots/'
    }
}

You can find the latest snapshot version following this link.

Contributing

We always welcome people to contribute new features or bug fixes, here is how.

If you have a problem, check the Issues Page first to see if we are already working on it.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].