我有流下载的问题。 @streaming注释未按预期工作。我完成下载后才收到responseBody。所以我无法下载带有流媒体的文件,因为文件在内存中下载然后接收并保存到缓存目录。
我的改造api:
public interface DownloadingAmazonApi {
@GET
@Streaming
Observable<ResponseBody> downloadFile(@Url String url);
}
用法:
downloadingAmazonApi.downloadFile(url)
.observeOn(Schedulers.io())
.map(body -> writeResponseBodyToDisk(body, type))
.map(localUrl -> ......))
...
为什么@streaming不起作用?我尝试使用不同的链接(亚马逊和其他主机)。我希望,我会在开始下载后立即收到带有流的responseBody,我会将此流缓存到存储中(无需下载到内存中)。
答案 0 :(得分:2)
我不知道它是什么。我删除HttpLoggingInterseptor并按预期工作流