关于android:Android-Kotlin-Coroutines-ktx扩展

36次阅读

共计 754 个字符,预计需要花费 2 分钟才能阅读完成。

本篇文章次要讲的是,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")
        })

    }
}

正文完
 0