package com.dahanis.main.activity; import android.app.Activity; import android.app.DownloadManager; import android.os.Bundle; import android.widget.Button; import android.widget.ProgressBar; import com.dahanis.main.R; import com.dh.foundation.utils.DLoggerUtils; import com.dh.foundation.utils.download.DownLoadUtil; import com.dh.foundation.utils.download.DownloadListener; import butterknife.Bind; import butterknife.ButterKnife; import butterknife.OnClick; /** * 文件下载示例demo * Created By: Seal.Wu * Date: 2015/10/9 * Time: 14:29 */ public class DownloadActivity extends Activity { String url = "http://cdn6.down.apk.gfan.com/asdf/Pfiles/2015/9/21/148567_5cc64a68-393b-4872-ae54-739873c146bc.apk"; @Bind(R.id.progressBar) ProgressBar progressBar; @Bind(R.id.startDownLoad) Button startDownLoad; @Bind(R.id.reDownload) Button reDownload; private long downloadId;//下载任务的标识唯一id DownLoadUtil downLoadUtil; @OnClick(R.id.startDownLoad) void startDownLoad() { downloadId = downLoadUtil.startADownloadTask(url, new DownloadListener() { @Override public void onLoadChange(int total, int currentSize, int state) { progressBar.setMax(total); progressBar.setProgress(currentSize); /** * 正在下载中 */ if (state == DownloadManager.STATUS_RUNNING) { } /** * 下载失败 */ else if (state == DownloadManager.STATUS_FAILED) { startDownLoad.setText("下载失败"); reDownload.setText("重新下载"); } } /** * 下载完成 */ @Override public void onComplete(long downloadId, String filePath) { startDownLoad.setText("下载完成"); reDownload.setText("重新下载"); } }); } @OnClick(R.id.reDownload) void reDownLoad() { startDownLoad.setText("开始下载"); reDownload.setText("正在下载"); startDownLoad(); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_donwload); ButterKnife.bind(this); downLoadUtil = DownLoadUtil.getInstance(); } @Override protected void onDestroy() { downLoadUtil.leaveActivity(downloadId); super.onDestroy(); } }