使用Coroutines(协程)进行网络请求(不依赖ViewModel和LiveData)
目前大多数使用协程进行网络请求都需要依赖ViewModel和LiveData,但是这样会引入新的ViewModel类,使用起来总是不够简便,能不能像普通的网络请求一样直接进行接口请求,数据处理呢?答案肯定是可行的。
首先需要添加依赖
1 | implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.2.0' |
由于本文是基于Coroutines+retrofit+okhttp等框架进行网络请求的,网络相关的依赖如下
1 | implementation 'com.squareup.okhttp3:okhttp:4.2.1' |
需要注意的是retrofit的版本需要2.6.0以上,不然使用方式会不一样