小编Chr*_* Pi的帖子

创建 Hilt viewModel 时出现错误

我尝试将一个简单的 viewModel 移交给可组合项,并且每次都会出现此错误,但我不知道这意味着什么:

java.lang.IllegalStateException: Given component holder class com.example.app.MainActivity does not implement interface dagger.hilt.internal.GeneratedComponent or interface dagger.hilt.internal.GeneratedComponentManager

我的摇篮:

    implementation("androidx.hilt:hilt-navigation:1.0.0-beta01")
    implementation("androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha03")
Run Code Online (Sandbox Code Playgroud)

我已经创建了一个BaseApplication文件

import android.app.Application
import dagger.hilt.android.HiltAndroidApp

@HiltAndroidApp
class BaseApplication: Application()
Run Code Online (Sandbox Code Playgroud)

并将其设置在清单中。

我创建了一个AppModule文件:

import android.content.Context
import com.veloce.montageservice.BaseApplication
import dagger.Module
import dagger.Provides
import dagger.hilt.InstallIn
import dagger.hilt.android.qualifiers.ApplicationContext
import dagger.hilt.components.SingletonComponent
import javax.inject.Singleton

@Module
@InstallIn(SingletonComponent::class)
object AppModule {

    @Singleton
    @Provides
    fun provideApplication(@ApplicationContext app: Context): BaseApplication {
        return app as BaseApplication
    }
}

Run Code Online (Sandbox Code Playgroud)

@HiltAndroidApp然后在我的中设置MainActivity并创建一个viewModel像这样的:

@HiltViewModel
class TaskViewModel: ViewModel() …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-jetpack-compose dagger-hilt

8
推荐指数
2
解决办法
1万
查看次数

Android Studio Jetpack compose 自动导入不再起作用

我今天开始使用 Android Jetpack Compose。一开始一切都很好。在某些课程中,您只需注意是否获得正确的软件包即可。但在某些时候我搞砸了一些事情,我不知道是什么。我只想导入一个包,然后弹出一些上下文菜单,我不小心按下了“确定”,从那时起,当我从 compose 包编写一个类时,“导入”就不再出现了。

在其他课程上效果很好

在 Jetpack 课程上它不再起作用

我确实关闭了一个选项,但我不知道是什么。谁能帮我这个?

android-studio

6
推荐指数
1
解决办法
1695
查看次数