android - 无法使用生命周期版本 2.2.0-alpha01 功能

标签 android android-livedata kotlin-coroutines

我正在尝试整合所提供的一些功能 here在我的 Kotlin 安卓应用程序中。我可以在我的 ViewModel 中很好地使用 viewModelScope,尽管这只有在我的 implementation "androidx.fragment:fragment-ktx:1.1.0-alpha09" 中才有效依赖项。

但是,我完全无法使用 this 中突出显示的 liveData 构建器功能部分。尝试在我的 ViewModel 中使用 liveData 时,出现 Unresolved 引用错误。

我尝试了 this 中的解决方案线程,但这并不能解决我的问题。

这是我的 build.gradle 文件的相关部分,其中包含与 ViewModel 和 LiveData 相关的所有依赖项

def lifecycle_version = "2.2.0-alpha01"

// ViewModel and LiveData
implementation "androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_version"
kapt "androidx.lifecycle:lifecycle-compiler:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-viewmodel-savedstate:1.0.0-alpha01"
implementation "androidx.fragment:fragment-ktx:1.1.0-alpha09"

再次值得一提的是,如果不在依赖项中包含 implementation "androidx.fragment:fragment-ktx:1.1.0-alpha09",我就无法使用 viewModelScope .

非常感谢任何帮助,因为我已经做了一些搜索,但找不到太多,因为这是一个相对较新的版本。谢谢!

最佳答案

所以,看起来像 实现“androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_version” 线在这里不起作用,也不起作用 实现“androidx.lifecycle:lifecycle-extensions:$lifecycle_version”, 我们需要分别声明 ViewModel 和 LiveData 的 kotlin 版本的依赖项。以下是 ViewModel 和 LiveData 的更新依赖部分(请注意也没有 fragment 依赖!)

// ViewModel and LiveData
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-viewmodel-savedstate:1.0.0-alpha01"
kapt "androidx.lifecycle:lifecycle-compiler:$lifecycle_version"

有了上面的内容,我现在可以使用问题帖子中提到的 viewModelScopeliveData 构建器函数。

关于android - 无法使用生命周期版本 2.2.0-alpha01 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56262948/

相关文章:

android - 更改自定义对话框标题的字体

android - 如何使用android kotlin根据第二次登录后选择的单选按钮更改工具栏颜色

android-room - 从android Room Architecture Component中的多对多结构中获取LiveData

android - 单元测试 LiveData android.os.Looper 未模拟

android - 在 kotlin 协程中实现 async-await()

java - 执行 doInBackground() 时发生错误,同时执行 facebook like

java - CustomView无法实例化(编辑器预览时出错,编译后不显示任何内容)

java - 重构谷歌的 NetworkBoundResource 类以使用 RxJava 而不是 LiveData

android - 如何等待所有异步完成?

java - Kotlin协程vs CompletableFuture