Android初级教程XUtils实现“断点续传”下载
对于“断电续传”,在任何开发中都显得很重要。xutils对此封装的很好了,可以很简单的实现很多下载功能,其中就包括“断点续传”
主要代码如下:
package com.itydl.xutils; import java.io.File; import com.lidroid.xutils.HttpUtils;
import com.lidroid.xutils.exception.HttpException;
import com.lidroid.xutils.http.ResponseInfo;
import com.lidroid.xutils.http.callback.RequestCallBack; import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast; public class MainActivity extends Activity { private TextView tv_failure;
private TextView tv_progress;
private ProgressBar pb; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv_failure = (TextView) findViewById(R.id.tv_failure);
tv_progress = (TextView) findViewById(R.id.tv_progress);
pb = (ProgressBar) findViewById(R.id.pb);
} public void click(View v){
HttpUtils utils = new HttpUtils();
String fileName = "QQPlayer.exe";
//确定下载地址
String path = "http://192.168.1.104:8080/" + fileName;
utils.download(path, //下载地址
"sdcard/QQPlayer.exe", //文件保存路径
true,//是否支持断点续传
true, new RequestCallBack<File>() { //下载成功后调用
@Override
public void onSuccess(ResponseInfo<File> arg0) {
Toast.makeText(MainActivity.this, arg0.result.getPath(), 0).show(); } //下载失败调用
@Override
public void onFailure(HttpException arg0, String arg1) {
// TODO Auto-generated method stub
tv_failure.setText(arg1);
} //进度条显示下载进度,而且即使断网,点击下载按钮仍然在原来位置下载
@Override
public void onLoading(long total, long current,
boolean isUploading) {
// TODO Auto-generated method stub
super.onLoading(total, current, isUploading);
pb.setMax((int)total);
pb.setProgress((int)current);
tv_progress.setText(current * 100 / total + "%");
}
});
} }
Android初级教程XUtils实现“断点续传”下载的更多相关文章
- Android 手机卫士--xutils说明与下载方法使用
		
xUtils简介 xUtils 包含了很多实用的android工具. xUtils 最初源于Afinal框架,进行了大量重构,使得xUtils支持大文件上传,更全面的http请求协议支持(10种谓词) ...
 - Android初级教程理论知识(第三章测试&数据存储&界面展现)
		
首先介绍单元测试,我在javaweb部分有详细介绍单元测试框架的一篇文章. 可以先看在javaweb中的单元测试详解篇http://blog.csdn.net/qq_32059827/article/ ...
 - Android初级教程理论知识(第八章网络编程二)
		
HttpClient 发送get请求 创建一个客户端对象 HttpClient client = new DefaultHttpClient(); 创建一个get请求对象 HttpGet hg = n ...
 - Android初级教程:RatingBar的使用
		
记得淘宝里面买家给卖家评分的时候会有一个星星状的评分条,其实就是基于RatingBar做了自定义使用了.那么本篇文章就对RatingBar的使用做一个基本的认识. 接下来就是正题,那就是对于Ratin ...
 - Android初级教程_获取Android控件的宽和高
		
转载:http://blog.csdn.net/johnny901114/article/details/7839512 我们都知道在onCreate()里面获取控件的高度是0,这是为什么呢?我们来看 ...
 - Android初级教程:ViewPage使用详解
		
转载本博客,请注明出处:http://blog.csdn.net/qq_32059827点击打开链接 ViewPage使用之一就是轮播广告,就以此为出发点,来详细解析一下ViewPage的使用和加载机 ...
 - Android初级教程:如何自定义一个状态选择器
		
有这样一种场景:点击一下某个按钮或者图片(view),改变了样式(一般改变背景颜色).这个时候一种解决方案,可能就是状态选择器.接下来就介绍如何实现状态选择器: 步骤: 一.新建这样的文件夹:res/ ...
 - Android初级教程:shape的基本用法
		
转载本文请注明出处:http://blog.csdn.net/qq_32059827/article/details/52203347 点击打开链接 在自定义进度条之前,先来学习一下shape的用 ...
 - Android初级教程:Android中解析方式之pull解析
		
在安卓中有很多种解析方式.按照大方向有xml解析和json解析.而,细致的分,xml和json解析各有自己的很多解析方式.今天这一篇主要介绍xml解析中的pull解析.对于xml的解析方式,我之前在j ...
 
随机推荐
- Linux LCD 显示图片【转】
			
转自:https://blog.csdn.net/niepangu/article/details/50528190 BMP和JPEG图形显示程序1) 在LCD上显示BMP或JPEG图片的主流程图首 ...
 - java如何获得数据库表中各字段的字段名
			
public class TestDemo { public static Connection getConnection() { Connection conn = null; try { Cla ...
 - C语言实现的排序
			
冒泡排序 比较相邻的两个元素,若顺序不对,则将其调换 通过一遍排序,较大的数会排到最后(沉到底部) 两层循环,外层循环控制遍数,内层循环控制每一遍内的排序. 完整代码: #include<std ...
 - David MacKay:用信息论解释 '快速排序'、'堆排序' 本质与差异
			
这篇文章是David MacKay利用信息论,来对快排.堆排的本质差异导致的性能差异进行的比较. 信息论是非常强大的,它并不只是一个用来分析理论最优决策的工具. 从信息论的角度来分析算法效率是一件很有 ...
 - 利用 Win32 启动和检测 UWP App 的方法
			
一种启动和检测 UWP 应用的方法 背景 我们发布过多款 UWP 平台的同类型 App ,最近有一个需求:用传统 Win32 程序启动我们的 UWP 程序.因为我们的每一个UWP App在客户机器上都 ...
 - 重置winsock目录解决不能上网的问题
			
摘自:http://www.52microsoft.com/netsh-winsock-reset/ 有时候,我们会遇到能成功连接网络但是却无法上网的问题.屏幕右下角系统托盘中的网络连接图标显示正常, ...
 - Linux: Check version info
			
一.查看Linux内核版本命令(两种方法): 1.cat /proc/version [root@localhost ~]# cat /proc/version Linux version 2.6.1 ...
 - 制定一个apk路径 然后跳出安装界面
			
制定一个apk的路径 然后跳出界面让用户选择是否安装 我们系统有一个写好的Activity来协助我们完成这一功能 我们来看看它的清单文件 <?xml version="1.0" ...
 - 计算机网络之套接字SOCKET
			
当某个应用进程启动系统调用时,控制权就从应用进程传递给了系统调用接口. 此接口再将控制权传递给计算机的操作系统.操作系统将此调用转给某个内部过程,并执行所请求的操作. 内部过程一旦执行完毕,控制权就又 ...
 - Android studio 中引用jar的其实是Maven?(一)
			
由于Studio比eclipse多了一步对工程构建的步骤,即为build.gradle这个文件运行,因此其引入第三方开发jar包与lib工程对比Eclipse已完成不同,引入第三方jar与lib工程显 ...