All Projects → ixuea → android-downloader

ixuea / android-downloader

Licence: Apache-2.0 license
An powerful download library for Android.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to android-downloader

Androiddownloader
An powerful download library for Android.
Stars: ✭ 287 (-23.47%)
Mutual labels:  downloader, multi-threading, downloadmanager
uget
(WIP) Universal Getter of remote files
Stars: ✭ 46 (-87.73%)
Mutual labels:  downloader, downloadmanager
VandaDownloader
强大的下载特性支持,更加清晰的特性设计。
Stars: ✭ 25 (-93.33%)
Mutual labels:  downloader, downloadmanager
Fast Android Networking
🚀 A Complete Fast Android Networking Library that also supports HTTP/2 🚀
Stars: ✭ 5,346 (+1325.6%)
Mutual labels:  downloader, downloadmanager
Docker Jdownloader
JDownloader 2 Docker Image (Multiarch) - Passed 40M Downloads
Stars: ✭ 85 (-77.33%)
Mutual labels:  downloader, downloadmanager
Downloader
Downloader for android with pause, resume, cancel, queue options
Stars: ✭ 40 (-89.33%)
Mutual labels:  downloader, downloadmanager
dl
Command-line file downloader tool
Stars: ✭ 39 (-89.6%)
Mutual labels:  downloader, downloadmanager
Pyload
The free and open-source Download Manager written in pure Python
Stars: ✭ 2,393 (+538.13%)
Mutual labels:  downloader, downloadmanager
Fetch
The best file downloader library for Android
Stars: ✭ 1,124 (+199.73%)
Mutual labels:  downloader, downloadmanager
Mzdownloadmanager
This download manager uses NSURLSession api to download files. It can download multiple files at a time. It can download large files if app is in background. It can resume downloads if app was quit.
Stars: ✭ 1,061 (+182.93%)
Mutual labels:  downloader, downloadmanager
Rxdownloader
Demo of Downloading Songs/Images through Android Download Manager using RxJava2
Stars: ✭ 166 (-55.73%)
Mutual labels:  downloader, downloadmanager
DownloadManagerPlus
Using faster and easier than Android Download Manager
Stars: ✭ 80 (-78.67%)
Mutual labels:  downloader, downloadmanager
CoubDownloader
A simple downloader for coub.com
Stars: ✭ 64 (-82.93%)
Mutual labels:  downloader
Soggfy
Spotify ogg dumper
Stars: ✭ 524 (+39.73%)
Mutual labels:  downloader
HisokaBOT-Whatsapp-Bot
Whatsapp Bot - Node Js.
Stars: ✭ 75 (-80%)
Mutual labels:  downloader
foxpages
Visual FoxPro Multithread Web Server
Stars: ✭ 22 (-94.13%)
Mutual labels:  multi-threading
react-use-downloader
Creates a download handler function and gives progress information
Stars: ✭ 65 (-82.67%)
Mutual labels:  downloader
sponge
sponge is a website crawler and links downloader command-line tool
Stars: ✭ 37 (-90.13%)
Mutual labels:  downloader
Linkedin-Learning-Courses-Downloader
Download LinkedIn Learning Courses in mp4 format and in the video quality you like with an intuitive UI
Stars: ✭ 226 (-39.73%)
Mutual labels:  downloader
Website-downloader
💡 Download the complete source code of any website (including all assets). [ Javascripts, Stylesheets, Images ] using Node.js
Stars: ✭ 615 (+64%)
Mutual labels:  downloader

android-downloader

English | 中文

License

Report an issue, iOS and macOS use CocoaDownloader.

Android Downloader is a open source multithread and mulitask downloadInfo framework for Android.

Try out the sample application on the Apk file.

Download

Add it in your root build.gradle at the end of repositories:

allprojects {
    repositories {
        ...
        maven { url 'https://jitpack.io' }
    }
}

Add the dependency:

dependencies {
    implementation 'com.ixuea:android-downloader:latest'
}

For info on using the bleeding edge, see the Snapshots wiki page.

ProGuard

If your project uses ProGuard, you need to add the following configuration to your project proguard-rules.pro file

-keep public class * implements com.ixuea.android.downloader.db.DownloadDBController

How do I use Android Downloader?

For more information on GitHub wiki and Javadocs.

1.Add network network permissions()

<uses-permission android:name="android.permission.INTERNET" />

2.Create a DownloadManager instance

downloadManager = DownloadService.getDownloadManager(context.getApplicationContext());

Simple use as follows

3.Download a file

//create download info set download uri and save path.
File targetFile = new File(getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS), "a.apk");
final DownloadInfo downloadInfo = new DownloadInfo.Builder().setUrl("http://example.com/a.apk")
    .setPath(targetFile.getAbsolutePath())
    .build();

//set download callback.
downloadInfo.setDownloadListener(new DownloadListener() {

  @Override
  public void onStart() {
      tv_download_info.setText("Prepare downloading");
  }

  @Override
  public void onWaited() {
      tv_download_info.setText("Waiting");
      bt_download_button.setText("Pause");
  }

  @Override
  public void onPaused() {
      bt_download_button.setText("Continue");
      tv_download_info.setText("Paused");
  }

  @Override
  public void onDownloading(long progress, long size) {
      tv_download_info
              .setText(FileUtil.formatFileSize(progress) + "/" + FileUtil
                      .formatFileSize(size));
      bt_download_button.setText("Pause");
  }

  @Override
  public void onRemoved() {
      bt_download_button.setText("Download");
      tv_download_info.setText("");
      downloadInfo = null;
  }

  @Override
  public void onDownloadSuccess() {
      bt_download_button.setText("Delete");
      tv_download_info.setText("Download success");
  }

  @Override
  public void onDownloadFailed(DownloadException e) {
      bt_download_button.setText("Continue");
      tv_download_info.setText("Download fail:" + e.getMessage());
  }
});

//submit download info to download manager.
downloadManager.download(downloadInfo);

Compatibility

  • Android SDK: Android Downloader requires a minimum API level of 21.

Build

Samples

Follow the steps in the Build section to setup the project and then:

./gradlew :app:run

You may also find precompiled APKs on the releases page.

More

See the example code.

Author

Smile - @ixueadev on GitHub, Email is [email protected], See more ixuea(http://www.ixuea.com)

Android development QQ group: 702321063.

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].