You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
lyy a6e26fcc04 readme 8 years ago
.idea 修复网络很差时下载文件不完整的bug 8 years ago
app 修复网络很差时下载文件不完整的bug 8 years ago
downloadutil 修复网络很差时下载文件不完整的bug 8 years ago
gradle/wrapper 修复目录结构 9 years ago
img 下载链接切换 9 years ago
.gitignore 修复目录结构 9 years ago
LICENSE Added files via upload 9 years ago
README.md readme 8 years ago
build.gradle 没做啥 8 years ago
gradle.properties 修复目录结构 9 years ago
gradlew 修复目录结构 9 years ago
gradlew.bat 修复目录结构 9 years ago
settings.gradle 修复目录结构 9 years ago

README.md

DownloadUtil

这是android 文件下载工具类,实现了多线程断点续传功能
如果你觉得我的代码对你有帮助,请麻烦你在右上角给我一个star.^_^

#下载 Download
compile 'com.arialyy.downloadutil:DownloadUtil:1.0.2'

#使用

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();
  	}
  }
  

#示例 例子图

License

Copyright 2016 AriaLyy

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.