位置: 编程技术 - 正文

Android 断点续传的实现(实现断点续传的工具软件)

编辑:rootadmin

推荐整理分享Android 断点续传的实现(实现断点续传的工具软件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:android 断点续传上传,android 断点续传上传,http1.1断点续传,android断点上传,android 断点续传上传,android断点上传,android 断点续传下载,android 断点续传下载,内容如对您有帮助,希望把文章链接给更多的朋友!

这两天用了下android5.1下载功能,简直鸡肋。无奈自己研究了半天的断点续传,总结一下。本文参考了慕课网XRay_Chen大神的视频,在此表示衷心的感谢!顺便说明,作者本身还只是个菜鸟,因此我希望能写一篇能让菜鸟看得懂的博客

基础知识

  因此我们可以从上面一句话得出这样一个结论,如果想要实现断点续传,必须保存断点。于是,我们可以定义这样一个普通类,用来保存文件的网络地址url,断点的位置finished(初始为0),以及结束位置end,简单代码如下

其次我们还需要定义一个普通的文件类,保存基本的文件信息,如文件大小,URL,名字等。

  同样我们需要知道一些简单的http协议的内容

Header 作用 示例 Accept-Ranges 可以请求网页实体的一个或者多个子范围字段 Accept-Ranges: bytes

翻译成大白话来讲就是,你可以通过设置Range来下载文件的一部分内容 注意:其返回的状态码不是(HttpURLConnection.HTTP_OK),而是(HttpURLConnection.HTTP_PARTIAL),因此在安卓中我们这样使用这个Header,代码实例

除了安卓的基本使用外,基础知识大概也就这么多.

页面布局

大致就是如下的样子,相当的简单 一个TextView 一个ProgressBar,两个Button

实现过程

定义普通的常量

Service部分

我们的Activity实现的功能是向Service发送下载与暂停请求,Intent需要传递下载文件的对象,此时文件长度临时设置为0,当从网络获取到文件长度是再设置

然后通过按钮设置响应事件,向Service发送下载与暂停的请求

从Service的生命周期可以看出,第一次启动服务时,运行 onCreate()->onStartCommand(),再次启动时只会调用onStartCommand(),因此我们可以重写onStartCommand()

Android 断点续传的实现(实现断点续传的工具软件)

下载基本的文件信息,与网络有关,开线程下载

Service中定义handler开始下载

恩,现在Service已经实现.

DownloadTask部分

主要实现文件的下载与暂停的控制,以及定时的发给主线程完成进度的消息.

下载/暂停部分

这一部分涉及到断点类ThreadInfo的基本操作,由于中断,所以需要我们及时的把当前的断点保存起来,这里选择使用数据库,当然你也可以选择其他方式,在此不在赘述数据库的实现,只是提供一个基本的接口

下载/暂停的基本实现

下载线程私有类实现

广播部分

发送广播

Activity部分

Activity部分除了控制UI还有接受广播,更新下载进度

总结

终于写完了,由于篇幅过长,在此,总结一下 大致过程

当然,楼主也提供了响应的源代码 github

年5月日 于

仿微信语音语音聊天 仿微信语音聊天,录音结束后显示在listview上,点击item可进行播放。一。效果图二、代码2.1activity_main.xml的编写LinearLayoutxmlns:android=

Android开发开源项目之-PullToRefresh源码分析 学习Android已经好几年了,但从没有认真写点什么,最近在一位同事的鼓动下有了写博客的想法。这是我第一篇博客,从第三方开源项目开始吧。首先我

android的SDK离线安装详细教程

标签: 实现断点续传的工具软件

本文链接地址:https://www.jiuchutong.com/biancheng/386088.html 转载请保留说明!

上一篇:Android自定义系列(2)——拟物化类弹窗式视频播放窗口(Android自定义系统服务框架)

下一篇:仿微信语音语音聊天(仿微信语音聊天)

  • 当月认证了进项票没用完下个月还可以用吗
  • 周转材料低值易耗品的会计处理
  • 生育津贴是否需要纳税
  • 合并资产负债表和合并利润表的区别
  • 个体工商户核定应税所得率
  • 建筑行业未收款先开发票如何做账?
  • 在建工程转固定资产的条件
  • 股东投入的资金要交税吗
  • 建筑行业跨期收入汇算清缴如何调整?
  • 企业购买原材料,货款未支付
  • 用现金支付销售产品的运费
  • 公司购买商品房可以抵扣增值税吗
  • 印花税为什么不计入资产成本
  • 红字发票账务处理摘要
  • 收费公路通行费增值税电子普通发票
  • 印花税所属期是7月到12月,可是税种认定是年,报不了
  • 两年内到期的应付票据
  • 退税差额怎么做账
  • 无偿获得固定资产的会计处理
  • 电子税务局哪里打印发票
  • 专票小数点后两位没有显示出来可以认证吗
  • 出租柜台收取的服务费
  • 住房补贴计入个人所得税吗
  • 安装服务需要预缴税款吗
  • 拆迁补偿款需要交企业所得税吗
  • 厂房租赁记账凭证
  • 超出经营范围开发票
  • 代账会计的职责
  • 使用u盘安装linux
  • 出纳有哪些清点项目
  • php循环语句
  • 外汇账户转账有手续费吗
  • 红利所得的税法规定
  • 存货包括生产成本,在资产负债表中表示
  • 微软商店 低价区
  • 会计如何建账做账
  • 企业为员工提供服务要交增值税吗
  • 商誉准则最新修订时间
  • 计算所得税不得扣除的税金
  • 如何配置apache
  • 分页limit
  • 年应税额是怎么算的
  • tailf命令 查看100行
  • 软件开发属于技术合同吗
  • 国企无偿划转股权免印花税
  • 《visual c++游戏编程基础》
  • 中国姓氏英文写法
  • 异地项目需要预缴增值税吗
  • 卖家运费险是不是退货免费
  • 支付厂房租赁费怎么入账
  • 预提成本应该如何结转
  • 深入讲解党的创新理论
  • 国网统一开发平台uap
  • 付国外专利费用需办什么手续
  • 公司优秀党员奖章
  • 政府补贴进项税额处理
  • 刚成立的公司老板要我入股
  • 季度预缴企业所得税要交滞纳金吗
  • 记账凭证核算处理方法
  • 行政单位应缴财政税金
  • 认缴制不会带来的账务问题
  • 给分公司开发票由总公司付款怎么办?
  • 建筑施工企业购入材料怎么做账
  • 抵扣联和发票联的区别
  • order by使用
  • window10右击
  • 怎么彻底卸载visual
  • ubuntu20.04升级20.10
  • windows10周年更新
  • 怎样修改mac
  • linux 多线程 写文件
  • Android之Notification-android学习之旅(二)
  • 怎么把两个文件中的内容合并
  • 如何使用开塞露排便
  • Unity destructor Or OnDestory
  • 计算两gps坐标之间距离
  • 基层税务工作难点重点热点
  • 上海买房退税政策2020
  • 北京地税电子税票怎么开
  • 二套房办房产证税费怎么算的
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设