此源码有助于理解;也是参照网上大神案例来改写的

源代码贴上

    

package com.xm.download;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.InputStream;import java.io.InputStreamReader;import java.io.RandomAccessFile;import java.net.HttpURLConnection;import java.net.URL;import android.app.Activity;import android.os.Bundle;import android.os.Environment;import android.os.Handler;import android.os.Message;import android.view.View;import android.widget.ProgressBar;import android.widget.TextView;public class MainActivity extends Activity {final String path="http://gdown.baidu.com/data/wisegame/775ed200394c4c3d/QQyinle_283.apk";final String pathName="QQyinle_283.apk";final int ThreadCount=3;static int finishedThread;int currentProgress;private ProgressBar pb;TextView tv;Handler handler=new Handler(){@Overridepublic void handleMessage(Message msg) {if(msg.what==1){//把变量改成long,在long下运算tv.setText((long)pb.getProgress() * 100 / pb.getMax() + "%");}}};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);pb=(ProgressBar)findViewById(R.id.pb);tv=(TextView)findViewById(R.id.tv);}/** *  * @param v */public void click(View v){Thread ad=new Thread(){@Overridepublic void run() {//发送get请求try {URL url=new URL(path);HttpURLConnection huc=(HttpURLConnection)url.openConnection();huc.setRequestMethod("GET");huc.setConnectTimeout(5000);huc.setReadTimeout(5000);if(huc.getResponseCode()==200)//请求成功{int contentLenth=huc.getContentLength();//得到长度//设置进度条的最大长度为文件的长度pb.setMax(contentLenth);//生成临时文件File file=new File(Environment.getExternalStorageDirectory(),pathName);RandomAccessFile raf=new RandomAccessFile(file,"rwd");raf.setLength(contentLenth);//设置大小raf.close();//计算出每个区间的下载大小int size=contentLenth/ThreadCount;for(int i=0;i

最后;别忘了把权限加上哦

更多相关文章

  1. Android(安卓)文件实现断点上传
  2. android读写文件
  3. android aidl通讯两个APP之间的应用
  4. Android学习——在Android中使用OpenCV的第一个程序
  5. android上传图片至服务器
  6. android操作xml
  7. cordova入门教程(五)给android apk签名
  8. Android组件的样式
  9. android点滴4

随机推荐

  1. android UDP多点广播,并自动建立Socket连
  2. Python+PyQT5的子线程更新UI界面的实例
  3. Android常见的异常之ClassNotFoundExcept
  4. Android日记之2012\01\16
  5. Android之全屏下软键盘弹出布局移动问题
  6. Android帧动画实现,防OOM,比原生动画集节
  7. Android中Looper讲解
  8. android 反射
  9. Android(安卓)app启动页广告
  10. Android(安卓)高版本(8、9、10)查看手机