我是靠谱客的博主 无情大白,最近开发中收集的这篇文章主要介绍Retrofit2和kotlin协程碰撞问题记录,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1、kotlin协程使用过程中一般会加入suspend关键字表明该方法需要单独线程处理
2、下载文件过程中如下

@GET
suspend fun downloadApk(@Url url: String): Call<ResponseBody>

在实际下载过程中会报错

Unable to create converter for retrofit2.Call<okhttp3.ResponseBody>

为啥?因为使用了suspend关键字(最后才知道问题)
retrofit对suspend的处理是视为同步操作,因此call就可以不需要了,可直接获取body数据。

@GET
fun downloadApk(@Url url: String): Call<ResponseBody>//正常操作

或者

@GET
suspend fun downloadApk(@Url url: String): ResponseBody//suspend关键字有额外处理

如此记录一下。。。。。避免再次踩坑

最后

以上就是无情大白为你收集整理的Retrofit2和kotlin协程碰撞问题记录的全部内容,希望文章能够帮你解决Retrofit2和kotlin协程碰撞问题记录所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(72)

评论列表共有 0 条评论

立即
投稿
返回
顶部