我已经在我的App类中初始化了一个worker,代码如下;
我希望在我的worker类中注入一个单例dao,以便更新数据库中的某些内容。因此,我像下面这样注入了dao;
当我在App类中引用WorkManager类时,出现了WorkerFactory: Could not instantiate com.mesutemre.kutuphanem.job.ClearImageNotInArchiveWorker的错误。但应用程序没有崩溃。这里注入dao有什么问题吗?此外,还有我的单例dao。
@HiltAndroidApp
class KutuphanemApplication:Application(),Configuration.Provider {
@Inject
lateinit var workerFactory: HiltWorkerFactory
override fun getWorkManagerConfiguration() =
Configuration.Builder()
.setMinimumLoggingLevel(android.util.Log.DEBUG)
.setWorkerFactory(workerFactory)
.build()
我希望在我的worker类中注入一个单例dao,以便更新数据库中的某些内容。因此,我像下面这样注入了dao;
@HiltWorker
class ClearImageNotInArchiveWorker @AssistedInject constructor(
@Assisted val appContext: Context,
@Assisted val workerParams: WorkerParameters,
private val kitapDao: KitapDao): CoroutineWorker(appContext, workerParams) {
override suspend fun doWork(): Result {...}
}
当我在App类中引用WorkManager类时,出现了WorkerFactory: Could not instantiate com.mesutemre.kutuphanem.job.ClearImageNotInArchiveWorker的错误。但应用程序没有崩溃。这里注入dao有什么问题吗?此外,还有我的单例dao。
@Singleton
@Provides
fun provideKitapDao(database: KutuphanemDatabase) = database.getKitapDao();