Kotlin 中使用okhttp下载图片/文件并获取下载进度(主要是与在Java中的区别)。

最近在用Kotlin写代码,需要写一个图片带进度下载的需求,在写到while 循环时被难住了,反复写了好几种方式,不是下载进度异常,就是不停的下载,导致图片下载失败,progressbar也不能更新。最后在Stack Overflow上找到解决方法。在此分享出来,希望能帮助大家。下面两张图分别Kotlin和Java 的下载代码,主要不同的地方就是while循环。

Kotlin 中使用okhttp下载图片/文件并获取下载进度(主要是与在Java中的区别)。_第1张图片

Kotlin 中使用okhttp下载图片/文件并获取下载进度(主要是与在Java中的区别)。_第2张图片

Kotlin 中的while循环有一个apply 函数,看源码其实是一个高阶函数,感兴趣的可以看一下。

Kotlin写的Gank妹子客户端

源码:https://github.com/1900Star/BigGirl-Kotlin

你可能感兴趣的:(Kotlin)