SEARU.ORG
当前位置:SEARU.ORG > Linux 软件 > 正文

Android 多线程断点续传工具 DownloadUtil

android 文件下载工具,实现了多线程断点续传功能。

使用示例代码:

DownloadUtil mUtil;

/**
 * 初始化下载工具类
 */
 private void init(){
    mUtil = new DownloadUtile();
 }

 /**
  * 开始下载和恢复下载都是这个..
  */
  private void download(){
    mUtil.download(this, mDownloadUrl, Environment.getExternalStorageDirectory().getPath() + "/test.apk"
                , new DownloadListener() {
                    long fileSize = 1;

                    @Override
                    public void onPreDownload(HttpURLConnection connection) {
                        super.onPreDownload(connection);
                        //在这里编写下载预处理操作
                        fileSize = connection.getContentLength();
                    }

                    @Override
                    public void onStart(long startLocation) {
                        super.onStart(startLocation);
                        //在这里编写开始后的相应操作
                    }

                    @Override
                    public void onChildResume(long resumeLocation) {
                        super.onChildResume(resumeLocation);
                        //子线程恢复下载的位置回调
                    }

                    @Override
                    public void onChildComplete(long finishLocation) {
                        super.onChildComplete(finishLocation);
                        //子线程完成下载的回调
                    }

                    @Override
                    public void onProgress(long currentLocation) {
                        super.onProgress(currentLocation);
                        //下载总进度回调
                    }

                    @Override
                    public void onStop(long stopLocation) {
                        super.onStop(stopLocation);
                        //停止下载的回调
                    }

                    @Override
                    public void onCancel() {
                        super.onCancel();
                       //取消下载回调
                    }

                    @Override
                    public void onResume(long resumeLocation) {
                        super.onResume(resumeLocation);
                        //恢复下载回调
                    }

                    @Override
                    public void onFail() {
                        super.onFail();
                        //下载失败回调
                    }

                    @Override
                    public void onComplete() {
                        super.onComplete();
                        //下载完成回调
                    }
                });

 }

 /**
  * 停止下载
  */
  private void stopDownload(){
    if(mUtil != null){
        mUtil.stopDownload();
    }
  }

   /**
  * 取消下载
  */
  private void cancelDownload(){
    if(mUtil != null){
        mUtil.cancelDownload();
    }
  }

效果图:

例子图

未经允许不得转载:SEARU.ORG » Android 多线程断点续传工具 DownloadUtil

赞 (0)
分享到:更多 ()

评论 0