Downloader
5.0.4
Downloader 是一个非常轻巧以及功能强大快速下载库,只有50KB 左右大小,对于大多数应用来说,性价比最高的一个下载库, Downloader 提供的API更简单、轻量且Downloader提供同步下载,系统通知进度等功能。
支持串行,多线程并行下载
支持断点续传
支持分块传输
支持系统通知进度
支持同步,异步下载
支持自义定路径
支持添加请求头
支持超时配置
提供简易的Api
支持重定向下载
支持进度回调
重试次数配置
支持下载APK文件完成后自动安装
支持暂停,恢复下载等操作
allprojects { repositories { ... maven { url 'https://jitpack.io' } } }
Support
implementation 'com.github.Justson:Downloader:v5.0.4'
Androidx
implementation 'com.github.Justson:Downloader:v5.0.4-androidx'
File file = DownloadImpl.getInstance(getApplicationContext()) .url("http://shouji.360tpcdn.com/170918/93d1695d87df5a0c0002058afc0361f1/com.ss.android.article.news_636.apk") .get();
DownloadImpl.getInstance(getApplicationContext()) .url("http://shouji.360tpcdn.com/170918/f7aa8587561e4031553316ada312ab38/com.tencent.qqlive_13049.apk") .enqueue();
DownloadImpl.getInstance(getApplicationContext()) .target(new File(this.getExternalCacheDir(), "com.ss.android.article.news_636.apk")) .setUniquePath(false) .setForceDownload(true) .url("http://shouji.360tpcdn.com/170918/93d1695d87df5a0c0002058afc0361f1/com.ss.android.article.news_636.apk") .enqueue(new DownloadListenerAdapter() {@Overridepublic void onStart(String url, String userAgent, String contentDisposition, String mimetype, long contentLength, Extra extra) {super.onStart(url, userAgent, contentDisposition, mimetype, contentLength, extra); }@Overridepublic void onProgress(String url, long downloaded, long length, long usedTime) {super.onProgress(url, downloaded, length, usedTime);Log.i(TAG, " progress:" + downloaded + " url:" + url); }@Overridepublic boolean onResult(Throwable throwable, Uri path, String url, Extra extra) {Log.i(TAG, " path:" + path + " url:" + url + " length:" + new File(path.getPath()).length());return super.onResult(throwable, path, url, extra); } });
/data/data/com.download.sample(packagename)/cache/download/private/filename.jpg /data/data/com.download.sample(packagename)/cache/download/public/filename.jpg