事实上,我这样干过,你们一做真的没有问题?
在 CallServerInterceptor 中,是调用了 RequestBody.source.wirteTo 方法,这个方法会将我们的 body 写进 sink 内,用 OkHTTP的角度来看,就写入到 HTTP1CodeC 的 Stream 上。
站在系统的角度,是将用户内存区的数据,送入内核内存区,然后由 TCP 协议栈进行发送到网卡。
但是,我们即使用来包装内,但是,从我们的 File 构建的 Body 经历了:将 File 内容读到 Okio.Buffer 内,然后将这个 Buff 写到 sink,在IO效率高的机器上,进度条会瞬间到100,然后等到几秒后,才会返回。
再谈Retrofit:文件的上传下载及进度显示前言 前面介绍了很多关于Retrofit2的基本使用,下面就单独介绍一下如何使用Retrofit2实现文件上传和文件下载,并且做了一点拓展,重点介绍了一下上传和下载过程中进度...