gpt4 book ai didi

android - Dagger Hilt Android 给出错误 : method getActivityFactory in class DefaultViewModelFactories cannot be applied to given types

转载 作者:行者123 更新时间:2023-12-04 14:56:27 25 4
gpt4 key购买 nike

我正在从事一个项目,我在其中实现了 Dagger Hilt + Retrofit + Coroutine。

但是更新dagger hilt的依赖后,项目无法运行。

我在使用依赖注入(inject)实现 Dagger 和 Viewmodels 的 Activity 和 fragment 中收到此错误。在依赖项更新之前,它工作正常。

这是相同的屏幕截图:

enter image description here

这是 Dagger 创建的类,有错误:

enter image description here

如果有人遇到过同样的问题。我不知道我做错了什么。我关注了this教程。本教程对我来说也很好用,但更新依赖项后出现上述错误。

最佳答案

好的,我找出问题所在。

问题出在 Dagger Hilt 的官方文档中 here

请参阅下面该文档的屏幕截图。

enter image description here

问题出在文档的代码中。他们为什么不更新他们的官方文档真的很令人沮丧!!!就这样吧……

我们必须改变

来自

@HiltViewModel
class MyViewModel @Inject constructor(
private val mainRepository: MainRepository
) : ViewModel() {

@HiltViewModel
class MyViewModel @Inject constructor(
private val mainRepository: MainRepository
) : ViewModel(), LifecycleObserver {

他们错过了 LifecycleObserver,因此,我遇到了错误。

不仅如此,

您还应该注意,以下依赖项的版本也应该相同。

在应用级 Gradle 中:

implementation "com.google.dagger:hilt-android:2.35.1"
kapt "com.google.dagger:hilt-android-compiler:2.35.1"

在项目级 Gradle 中:

classpath "com.google.dagger:hilt-android-gradle-plugin:2.35.1"

关于android - Dagger Hilt Android 给出错误 : method getActivityFactory in class DefaultViewModelFactories cannot be applied to given types,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67890872/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com