首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
源码解析
订阅
Yuloran
更多收藏集
微信扫码分享
微信
新浪微博
QQ
7篇文章 · 0订阅
RxDownload2 源码解析(三)
服务器必须支持按 byte-range 下载,也就是支持 Range: bytes=xxx-xxx 请求头。详见 Http 协议 rfc2616 - Range。 很简单,先读取 Content-Length 响应头,获取文件大小,然后用文件大小除以线程数就可计算出每条线程的下…
RxDownload2 源码解析(二)
顾名思义,就是分发下载任务的线程。该线程运行在 DownloadService 中,从业务上看,DownloadService应当仅被 start() & bind() 一次。任务分发线程,在 onBind() 时创建: 上述代码有个细节,onServiceConnected(…
RxDownload2 源码解析(一)
这里指服务器支持断点续传时,可同时开启几个线程去下载一个文件。而同时下载的最大任务数,是由信号量控制的 Http 协议的 HEAD 方法,检测服务器文件是否修改、服务器是否支持断点下载、保存文件长度都是 HEAD 请求(响应非常快)。实际使用时,要看自己的服务器是否支持 HEA…
Android 8.1 Handler 源码解析
一. 前言 基于Android 8.1(API27) 源码,分析 Handler 的工作流程。 在 Android 系统中,Zygote 进程是首个 java 进程,同时也是所有 java 进程的父进程。上层应用开发工程师所关注的 App 进程 fork 自 Zygote 进程…
Retrofit2 源码解析之动态代理
基于 Retrofit 2.3.0 & Android 8.1(API27)分析 Java 动态代理在 Android 上的实现。 动态代理最难理解的就是动在何处,其实动就动在代理类是完全在内存中生成的,包括创建类字节码、加载、链接、初始化代理类对象整个过程。不同于那些在编译期…
RxJava2 源码解析及设计思想
本文简析 RxJava2 的 subscribeOn 和 zip 操作符。 上述代码中,Single 到 subscribe() 之间的都称为 操作符,想像一下自己就是其中一个 操作符,那么位于左边的便称为 上游,位于右边的则称为 下游,故上下游其实是相对的。 由于 RxJav…
你真的了解 OkHttp 缓存控制吗?
最近在写一个开源项目,需要用到 Http 的缓存机制。由于项目所使用的 Http 客户端为 OkHttp,所以需要了解如何使用 OkHttp 来实现 Http 的缓存控制。很惭愧,这一块不太熟悉,所以就到网上 CV 了一下。虽然我知道网上很多博客不太靠谱,但是没想到,居然真掉坑…