大型文件下载_特别推荐

文件下载是每一个android 开发者不可回避的问题,下载中可能会出现各种无法规避的问题,网络异常,网络断开等等,让我很是苦恼,

自己封装过下载的类,也封装过Okhttp来下载 ,Volley下载 ,

小文件,妥妥的,没一点问题 ,最近一个项目把我弄残了 ,以前封装好的OKhttp下载工具类,软件升级没问题 ,但是我的下载文件有600多M ,600M ,

What Fuck !

问题就来了,中途出现的问题就不言而喻了 ,后来也添加了断点下载,和一些网络优化,使用过程中还是不爽,这时我想到以前用的网络框架 ,

Xutil . 一些老人可能都知道 ,这个神一般的框架 ,后来测试中,在各种网络状态下,XUtil的下载工具类,总能表现异常 。今天要吹捧它一番 。

使用方法

去下载Xutil的jar包 ,我使用的是xUtil-2.6.14.jar

大型文件下载_特别推荐

今天优化了一下代码补贴代码了 ,整理了一个Module,调用更方便 。 

主界面代码看就知道了

就一个按钮。项目依赖包就好

依赖包地址 :http://pan.baidu.com/s/1pLSKp79

依赖包会持续更新 .

在App项目中添加依赖包  

compile project(':downmodule')


package com.reeman.down;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

import com.reeman.util.down.util.DownManager;

public class MainActivity extends Activity implements View.OnClickListener {
    private Button btn_start;
    private String path = "/sdcard/dangbei.apk";
    String url = "http://imtt.dd.qq.com/16891/9FFDE35ADEFC28D3740D4E16612F078A.apk?fsname=com.tencent.tmgp.sgame_1.22.1.13_22011304.apk&csr=1bbd";
    DownManager downManager;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        intiView();
    }

    private void intiView() {
        downManager = new DownManager(MainActivity.this);
        btn_start = (Button) findViewById(R.id.btn_start);
        btn_start.setOnClickListener(this);
    }


    @Override
    public void onClick(View view) {
        switch (view.getId()) {
            case R.id.btn_start:
                downManager.downFileStart(url, path);
                break;
        }
    }
}


最后别忘记了权限

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