Android 网络:Retrofit 与 Kotlin 协程
16lz
2021-01-23
2018 年,Android 圈发生了许多翻天覆地的变化,尤其是在 Android 网络方面。稳定版本的 Kotlin 协程的发布极大地推动了 Android 在处理多线程方面从 RxJava 到 Kotlin 协程的发展。 本文中,我们将讨论在 Android 中使用Retrofit2 和Kotlin 协程 进行网络 API 调用。我们将调用TMDB API 来获取热门电影列表。
概念我都懂,给我看代码!!
如果你在 Android 网络方面有经验并且在使用 Retrofit 之前进行过网络调用,但可能使用的是 RxJava 而不是 Kotlin 协程,并且你只想看看实现方式, 请查看 Github 上的 readme 文件 。
Android 网络简述
简而言之,Android 网络或者任何网络的工作方式如下:
- 请求 —— 使用正确的头信息向一个 URL(终端)发出一个 HTTP 请求,如有需要,通常会携带授权的 Key。
- 响应 —— 请求会返回错误或者成功的响应。在成功的情况下,响应会包含终端的内容(通常是 JSON 格式)。
- 解析和存储 —— 解析 JSON 并获取所需的值,然后将其存入数据类中。
Android 中,我们使用:
- Okhttp —— 用于创建具有合适头信息的 HTTP 请求。
- Retrofit —— 发送请求。
- Moshi / GSON —— 解析 JSON 数据。
- Kotlin 协程 —— 用于发出非阻塞(主线程)的网络请求。
- Picasso /Glide —— 下载网络图片并将其设置给 ImageView。
显然这些只是一些热门的库,也有其他类似的库。此外这些库都是由Square 公司 的牛人开发的。
更多相关文章
- Android P/9.0 http网络请求异常
- Android 网络安全配置
- Android 判断用户2G/3G/4G移动数据网络
- Android SIP 网络通话
- Android 启动Service监听网络状态
- Android之网络请求3————OkHttp的拦截器和封装
- Android换肤功能设计与实现(5)——网络加载及图片内存管理