您的位置:首页 > 其它

8 基于框架XUtils下的多线程断点下载

2015-03-15 19:33 281 查看
-------------------------------main.java-----------------------------

package com.example.bk;

import java.io.File;

import android.os.Bundle;

import android.support.v7.app.ActionBarActivity;

import android.view.View;

import android.widget.EditText;

import android.widget.TextView;

import com.lidroid.xutils.HttpUtils;

import com.lidroid.xutils.exception.HttpException;

import com.lidroid.xutils.http.HttpHandler;

import com.lidroid.xutils.http.ResponseInfo;

import com.lidroid.xutils.http.callback.RequestCallBack;

public class MainActivity extends ActionBarActivity {

private EditText urlText1;

private TextView textView;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

urlText1 = (EditText) findViewById(R.id.urlText1);

textView = (TextView) findViewById(R.id.text);

}

public void downloadOnClick(View view) {

HttpUtils http = new HttpUtils();

HttpHandler handler = http.download(urlText1.getText().toString(),

"/sdcard/xx.pdf",

true, // 如果目标文件存在,接着未完成的部分继续下载。服务器不支持RANGE时将从新下载。

true, // 如果从请求返回信息中获取到文件名,下载完成后自动重命名。

new RequestCallBack<File>() {

@Override

public void onStart() {

textView.setText("conn...");

}

@Override

public void onLoading(long total, long current, boolean isUploading) {

textView.setText(current + "/" + total);

}

@Override

public void onSuccess(ResponseInfo<File> responseInfo) {

textView.setText("downloaded:" + responseInfo.result.getPath());

}

@Override

public void onFailure(HttpException error, String msg) {

textView.setText(msg);

}

});

}

}

。。。。。。。。。。。。main.xml。。。。。。。。。。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:orientation="vertical" >

<EditText

android:id="@+id/urlText1"

android:text="http://192.168.137.1:8080/"

android:layout_width="match_parent"

android:layout_height="wrap_content"

/>

<Button

android:onClick="downloadOnClick"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

/>

<TextView

android:id="@+id/text"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

/>

</LinearLayout>

、、、、、、、、权限、、、

<uses-permission android:name="android.permission.INTERNET"/>

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: