android下載框架FileDownloader的簡單使用
阿新 • • 發佈:2019-01-02
首先,依賴:
implementation 'com.liulishuo.filedownloader:library:1.7.4'
因為我沒有定製元件,所以我直接在使用的地方初始化:
FileDownloader.setup(ac); //ac為activity的上下文物件
然後直接使用:
String FileLoad = "cxstatus/";
FileDownloader.getImpl().create(url) .setPath(Environment.getExternalStorageDirectory().getAbsolutePath()+File.separator+FileLoad+"status.apk") .setForceReDownload(true) .setListener(new FileDownloadListener() { //等待 @Override protected void pending(BaseDownloadTask task, int soFarBytes, int totalBytes) { progressDialog.show(); } //下載進度回撥 @Override protected void progress(BaseDownloadTask task, int soFarBytes, int totalBytes) { progressDialog.setProgress((soFarBytes * 100 / totalBytes)); } //完成下載 @Override protected void completed(BaseDownloadTask task) { progressDialog.cancel(); installAPK(); } //暫停 @Override protected void paused(BaseDownloadTask task, int soFarBytes, int totalBytes) { } //下載出錯 @Override protected void error(BaseDownloadTask task, Throwable e) { Toast.makeText(ac,"下載出錯",Toast.LENGTH_SHORT).show(); progressDialog.cancel(); } //已存在相同下載 @Override protected void warn(BaseDownloadTask task) { progressDialog.cancel(); } }).start();
很不錯的一個下載框架,效能很好;
更多的使用可以去github上去看文件,有中英文的