Android使用Xutils3进行断点下载的实例

使用工具:Android studio 3.0

使用方法:

一:在build.gradle(Module:app)中添加依赖

implementaion 'org.xutils:xutils:3.5.1'

二:单独创建一个MyApp类初始化xutils,类名可自定义

public class MyApp extends Application {
  @Override
  public void onCreate() {
    super.onCreate();
    x.Ext.init(this);
  }
}

三:在AndroidManifest中添加权限并注册MyApp

//添加权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.INTERNET"/>
//注册MyApp

在<application>节点中添加android:name=".MyApp'

四:使用下载方法

public void download(View view){
    String path=et.getText().toString().trim();
    RequestParams params=new RequestParams(path);
    params.setSaveFilePath(Environment.getExternalStorageDirectory()+"/myapp/");
    params.setAutoRename(true);
    x.http().post(params,new Callback.ProgressCallback<File>(){
      @Override
      public void onWaiting() {

      }
      @Override
      public void onStarted() {

      }
      @Override
      public void onLoading(long total, long current, boolean isDownloading) {
        pd.setMax((int)total);
        pd.setProgress((int)current);
      }
      @Override
      public void onSuccess(File result) {
        Log.i("TEST","下载完成");
      }
      @Override
      public void onError(Throwable ex, boolean isOnCallback) {

      }
      @Override
      public void onCancelled(CancelledException cex) {

      }
      @Override
      public void onFinished() {

      }
    });
  }

知识点扩展:

xUtils3简介

xUtils 包含了orm, http(s), image, view注解, 但依然很轻量级(246K), 并且特性强大, 方便扩展:

  • 稳定的基石: AbsTask和统一的回调接口Callback, 任何异常, 即使你的回调方法实现有异常都会进入onError, 任何情况下onFinished总会让你知道任务结束了.
  • 基于高效稳定的orm工具, http模块得以更方便的实现cookie(支持domain, path, expiry等特性)和 缓存(支持Cache-Control, Last-Modified, ETag等特性)的支持.
  • 有了强大的http及其下载缓存的支持, image模块的实现相当的简洁, 并且支持回收被view持有, 但被Mem Cache移除的图片, 减少页面回退时的闪烁.
  • view注解模块仅仅400多行代码却灵活的支持了各种View注入和事件绑定, 包括拥有多了方法的listener的支持.
(0)

相关推荐

  • Android XUtils3框架的基本使用方法(二)

    上一篇Android中XUtils3框架使用方法详解(一)文章,主要介绍了XUtil3的注解模块,网络模块,图片加载模块,今天给大家带来数据库模块的讲解,现在主流的ORM框架很多,比如OrmLite,GreenDao,Active Android,Realm等等,这些框架每个都有自己的优点和缺点,大家完全可以根据自己项目的实际需求进行选择,下面开始进入今天的数据库模块的介绍. 今天主要给大家带来以下几个模块: 如何创建删除一张表 如何对表进行增删查改操作 如何创建数据库和删除数据库 如何建立一表

  • Android使用xUtils3.0实现文件上传

    几个月前写过一篇博客<xUtils3.0框架学习笔记> ,上面也有记录通过xUtils实现文件上传的使用方法,代码如下: private void upLoadOnClick(View v) { String upUrl = "/mnt/sdcard/pic/test.jpg";//指定要上传的文件 final ProgressDialog dia = new ProgressDialog(this); dia.setMessage("加载中....")

  • Android Xutils3网络请求的封装详解及实例代码

     Xutils3网络请求的封装详解 封装了一个Xutil3的网络请求工具类,分享给大家,本人水平有限,不足之处欢迎指出. 使用前先配置xutils3: 1.gradle中添加 compile 'org.xutils:xutils:3.3.40' 2.自定义Application /** * Created by Joe on 2016/9/25. */ public class MyApp extends Application { @Override public void onCreate(

  • Android中XUtils3框架使用方法详解(一)

    xUtils简介 xUtils 包含了很多实用的android工具. xUtils 支持大文件上传,更全面的http请求协议支持(10种谓词),拥有更加灵活的ORM,更多的事件注解支持且不受混淆影响... xUitls 最低兼容android 2.2 (api level 8) 今天给大家带来XUtils3的基本介绍,本文章的案例都是基于XUtils3的API语法进行的演示.相信大家对这个框架也都了解过, 下面简单介绍下XUtils3的一些基本知识. XUtils3一共有4大功能:注解模块,网络

  • android ListView结合xutils3仿微信实现下拉加载更多

    前言:最近涉及到和QQ打交道,定义所有的好友一共只能有300条消息,如果一次性从数据库读取300条或者更多,界面会有细微的卡顿.所以考虑了下分页,第一次进来只显示20条(仿微信),当用户滑到第一条后,如果数据库有消息,则再加载20条. 步骤-问把大象关冰箱,总共分几步? 1.自定义absListview.scrollListerner 核心的东西是监听ListView的scrollListerner,这里采取拿来主义 原文连接找不到了,如果原作者看到,请联系青楼爱小生,将您的文章链接更新出来 ,

  • Android使用Xutils3进行断点下载的实例

    使用工具:Android studio 3.0 使用方法: 一:在build.gradle(Module:app)中添加依赖 implementaion 'org.xutils:xutils:3.5.1' 二:单独创建一个MyApp类初始化xutils,类名可自定义 public class MyApp extends Application { @Override public void onCreate() { super.onCreate(); x.Ext.init(this); } }

  • Android使用多线程实现断点下载

    多线程下载是加快下载速度的一种方式,通过开启多个线程去执行一个任务..可以使任务的执行速度变快..多线程的任务下载时常都会使用得到..比如说我们手机内部应用宝的下载机制..一定是通过使用了多线程创建的下载器..并且这个下载器可以实现断点下载..在任务被强行终止之后..下次可以通过触发按钮来完成断点下载...那么如何实现断点下载这就是一个问题了.. 首先我们需要明确一点就是多线程下载器通过使用多个线程对同一个任务进行下载..但是这个多线程并不是线程的数目越多,下载的速度就越快..当线程增加的很多的

  • Android原生实现多线程断点下载实例代码

    各位父老乡亲,我单汉三又回来了,今天为大家带来一个用原生的安卓写的多线程断点下载Demo. 通过本文你可以学习到: SQLite的基本使用,数据库的增删改查. Handler的消息处理与更新UI. Service(主要用于下载)的进阶与使用. 原生的json文件解析(多层嵌套). RandomAccessFile的基本使用,可以将文件分段. 基于HttpURLConnection的大文件下载. 上面内容结合,实现多线程,断点下载. Demo是在TV上运行的,图片显示的问题不要纠结了. 文件下载的

  • Android入门:多线程断点下载详细介绍

    本案例在于实现文件的多线程断点下载,即文件在下载一部分中断后,可继续接着已有进度下载,并通过进度条显示进度.也就是说在文件开始下载的同时,自动创建每个线程的下载进度的本地文件,下载中断后,重新进入应用点击下载,程序检查有没有本地文件的存在,若存在,获取本地文件中的下载进度,继续进行下载.当下载完成后,自动删除本地文件. 一.多线程断点下载介绍 所谓的多线程断点下载就是利用多线程下载,并且可被中断,如果突然没电了,重启手机后可以继续下载,而不需要重新下载: 利用的技术有:SQLite存储各个线程的

  • 详解Android中的多线程断点下载

    首先来看一下多线程下载的原理.多线程下载就是将同一个网络上的原始文件根据线程个数分成均等份,然后每个单独的线程下载对应的一部分,然后再将下载好的文件按照原始文件的顺序"拼接"起来就构 成了完整的文件了.这样就大大提高了文件的下载效率.对于文件下载来说,多线程下载是必须要考虑的环节. 多线程下载大致可分为以下几个步骤: 一.获取服务器上的目标文件的大小 显然这一步是需要先访问一下网络,只需要获取到目标文件的总大小即可.目的是为了计算每个线程应该分配的下载任务. 二. 在本地创建一个跟原始

  • android多线程断点下载-带进度条和百分比进度显示效果

    android多线程断点下载,带进度条和百分比显示,断点下载的临时数据保存到SD卡的文本文档中,建议可以保存到本地数据库中,这样可以提高存取效率,从而提高系统性能. 效果: 打开软件: 下载中: 下载完毕: 附代码如下: package com.yy.multiDownloadOfBreakPoint; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.io.R

  • Android 断点下载和自动安装的示例代码

    今天说一下Android中下载App到手机中并自动安装,啥也不说了先上效果图了! 上面呢是下载中的一个图片和下载后会自动提示你安装的一个图片,二话不说,这接开代码吧! 首先来一个下布局: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:ap

  • Android实现多线程断点下载的方法

    本文实例讲述了Android实现多线程断点下载的方法.分享给大家供大家参考.具体实现方法如下: package cn.itcast.download; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputSt

  • Android 使用 DowanloadManager 实现下载并获取下载进度实例代码

    Android 使用 DowanloadManager 实现下载并获取下载进度实例代码 实现代码: package com.koolsee.gallery; import java.util.ArrayList; import java.util.List; import java.util.Timer; import java.util.TimerTask; import android.app.Activity; import android.app.DownloadManager; imp

  • Android实现断点下载的方法

    最近做的项目中需要实现断点下载,即用户一次下载可以分多次进行,下载过程可以中断,在目前大多数的带离线缓存的软件都是需要实现这一功能.本文阐述了通过sqlite3简单实现了一个具有断点下载功能的demo.言归正传,开始正文. 设计 数据库表存储元数据 DBHelper.java 用于业务存储的Dao Dao.java 抽象下载信息的Bean LoadInfo.java 呈现下载信息View MainActivity.java 存储下载信息Bean DownloadInfo.java 封装好的下载类

随机推荐