为了账号安全,请及时绑定邮箱和手机立即绑定

Android-Service系列之多线程断点续传下载

XRay_Chen 移动开发工程师
难度中级
时长 1小时32分
学习人数
综合评分9.83
28人评价 查看评价
9.9 内容实用
9.9 简洁易懂
9.7 逻辑清晰

最新回答 / 落撒
我是这么理解的,虽然同一时间点是只有一个线程在工作,但是可能在某一个时间段有多个线程同时需要请求网络。你多线程下载就保证了要下载线程执行次数多。好比于线程优先级大了,得到分配的资源久多了

最新回答 / 依然丶丶丶
如果服务已经存在,再次开启服务是不会创建新的实例的,只会调用onStartCommand方法,(视频中是继续下载),当我们完成一个完整的动作或任务后是可以停止服务的,以为此时服务已经没有存在的意义,当我们有新的任务可以重新开启一个。服务是Android四大组件之一,和activity是等级的,通俗点说,服务就是没有UI界面的activity,如果服务里没有代码在运行,服务开着也是没有什么开销的,几乎可以忽略不计。

最新回答 / MyBilly
这个一般都是最后一次文件写入完时间没有一个周期,最简单的办法,就是直接在接收到下载完成的广播后,强制设置进度为100即可

最新回答 / 触手摸不到的温柔
当然会有问题的,好比一个用户里有100元钱,同一时间段我在银行取100,你用支付宝转100,如果不加锁,银行就相当于执行了200的消费服务。

最新回答 / 趟水过河
demo中进度值的设定有两个: 文件的下载进度 和 当前线程的下载进度,   通过广播发送的是文件的下载进度值,单个线程的进度值是用来记录此线程的下载断点的。  每个线程是都会发送广播的,毕竟每个线程的更新,都表示着文件的下载进度的更新。
课程须知
适合有一定Android开发基础的同学,要求学生能够有很强的java中多线程以及线程池的基础,灵活使用service和多线程结合实现断点续传功能。
老师告诉你能学到什么?
Activity和Service的通信方法 ListView和BaseAdapter的使用 数据库操作 多线程分段下载的原理 线程池的使用 线程同步的应用 单例模式的应用 Notification的使用 Messenger的使用

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消