Ошибка: [Dagger/MissingBinding]. Невозможно предоставить без метода с аннотацией @Provides.Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Ошибка: [Dagger/MissingBinding]. Невозможно предоставить без метода с аннотацией @Provides.

Сообщение Anonymous »


Я пытаюсь использовать Hilt для внедрения репозитория погоды в мою модель представления, но получаю следующее сообщение об ошибке:

gffgfdfdfdfdfdfdfdfdf
WeatherDao невозможно предоставить без метода с аннотацией @Provides.
публичный абстрактный статический класс SingletonC реализует WeatherApplication_GeneratedInjector

Погода DAO:

@Дао интерфейс WeatherDao { @Insert(onConflict = OnConflictStrategy.REPLACE) приостановить веселье InsertWeatherItem(weatherItem: WeatherItem) @Query("УДАЛИТЬ ИЗ WEATHERITEM WHERE cityName = :cityName") приостановить веселье deleteWeatherItem(cityName: String) @Query("SELECT * FROM WEATHERITEM WHERE cityId = :id") fun getWeatherItem(id: Int): Flow @Query("ВЫБРАТЬ * ИЗ ПОГОДЫ") весело getAllWeatherItems(): Flow } Хранилище погоды:

class WeatherRepository @Injectconstructor(private val WeatherDao: WeatherDao) { приостановить веселье InsertWeatherItem(weatherItem: WeatherItem) = WeatherDao.insertWeatherItem(weatherItem) приостановить веселье deleteWeatherItem(cityName: String) = WeatherDao.deleteWeatherItem(cityName) fun getWeatherItem(id: Int): Flow = WeatherDao.getWeatherItem(id) весело getAllWeatherItems(): Flow = WeatherDao.getAllWeatherItems() } База данных погоды:

@Database(entities = [WeatherItem::class], версия = 1) абстрактный класс WeatherDatabase :RoomDatabase(){ абстрактное развлечение WeatherDao(): WeatherDao } Модуль погоды:

@Module @InstallIn(ActivityComponent::class) объект WeatherModule { @Обеспечивает @Синглтон весело обеспечитьDatabase (@ApplicationContext context: Context): WeatherDatabase { вернуть Room.databaseBuilder( контекст, WeatherDatabase::class.java, «База данных погоды») .fallbackToDestructiveMigration() .строить() } @Обеспечивает @Синглтон весело обеспечитьUserDao(weatherDatabase: WeatherDatabase): WeatherDao { вернуть WeatherDatabase.weatherDao() } @Обеспечивает @Синглтон весело обеспечитьWeatherRepository(weatherDao: WeatherDao): WeatherRepository { вернуть WeatherRepository (weatherDao) } } Модель просмотра погоды:

@HiltViewModel класс WeatherViewModel @Inject конструктор( частный вал WeatherRepository: WeatherRepository, ) : ViewModel() Основная деятельность:

@AndroidEntryPoint класс MainActivity : ComponentActivity() { переопределить fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) val viewModel: WeatherViewModel от viewModels() setContent { WindSpellTheme(darkTheme = darkTheme) { Поверхность( модификатор = Модификатор.fillMaxSize(), цвет = MaterialTheme.colorScheme.background ) { MainScreen (viewModel) { } } } } } } Применение:

@HiltAndroidApp класс WeatherApplication: Приложение() Версия рукояти — 2.47
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»