美文网首页
Android Kotlin Coroutines ktx扩展

Android Kotlin Coroutines ktx扩展

作者: 易含 | 来源:发表于2022-01-11 19:43 被阅读0次

    本篇文章主要讲的是,kotlin 协程在 ktx 上的扩展

    lifecycle 扩展
    对于 lifecycle 的扩展,已经在 以前的文章中讲过了

    主要的依赖

    implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.2.0"
    

    viewModel 扩展
    对于 viewModel 的扩展,已经在 以前的文章中讲过了

    主要的依赖

    implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1'
    

    liveData 扩展
    主要的依赖

     implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.2.0'
    

    官网链接如下:

    具体使用举例如下:

    class MainActivity : AppCompatActivity() {
    
        val user: LiveData<String> = liveData {
            //模拟网络请求
            var user = getUser()
    
            if (user == "ok") {
                //模拟请求成功
                emit("ok")
            } else {
                //模拟请求失败
                emit("failed")
            }
        }
    
        /**
         * 模拟网络请求
         */
        suspend fun getUser(): String {
            var ret = withContext(Dispatchers.Default) {
                "ok"
            }
            return ret
        }
    
        override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            setContentView(R.layout.activity_main)
    
            user.observe(this, {
                Log.d("yy--", "name1:$it")
            })
    
        }
    }
    

    相关文章

      网友评论

          本文标题:Android Kotlin Coroutines ktx扩展

          本文链接:https://www.haomeiwen.com/subject/gdhicrtx.html