Kotlin/Android Collectors/ Observers не находят никаких изменений за пределами классаAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Kotlin/Android Collectors/ Observers не находят никаких изменений за пределами класса

Сообщение Anonymous »


Вот мой класс репозитория, гарантирующий изменение состояния моего местоположения

@Синглтон класс LocationRepository @Inject конструктор(){ Private val _locationData = MutableStateFlow(null) val locationData: StateFlow = _locationData.asStateFlow() в этом { } забавное обновлениеLocation (местоположение: Местоположение) { _locationData.update { расположение } locationData.value?.let { logthis(it) } } } забавный журнал (местоположение: Location) { Log.i("Это работает", location.toString()) } Все журналы классов работают, кроме модели представления

@HiltViewModel класс myViewModel @Inject конструктор( частный вал mainRepository: Репозиторий, частный вал commonUtils: AppUtils, ): ViewModel() { @Инжект lateinit var locationRepository: LocationRepository или мой составной

@Composable веселый MyScreen( viewModel = myViewModel = hiltViewModel() ) {//здесь еще куча кода val location = viewModel.locationRepository.locationData val locationData по location.collectAsState(null) LaunchedEffect(locationData){ Log.i("Не работает", locationData.toString()) } LaunchedEffect(locationRepository){ locationRepository.locationData.collect{ Log.i("Тоже не работает", it.toString()) } } } Я ожидал увидеть какие-то журналы, запустить несколько дополнительных операций и вернуть сообщение об успехе, но так и не дошел до этого.

Я использовал репозиторий в качестве синглтона, чтобы гарантировать, что это единственный работающий экземпляр класса, но явно что-то не так, потому что это тоже не сработало
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Laravel Observers - обновленные триггеры запускаются бесконечно и выдают ошибку bcrypt
    Anonymous » » в форуме Php
    0 Ответы
    50 Просмотры
    Последнее сообщение Anonymous
  • Снаряды находят новую цель после смерти исходной.
    Гость » » в форуме C++
    0 Ответы
    19 Просмотры
    Последнее сообщение Гость
  • Панды группируются и находят разницу между максимальным и минимальным
    Anonymous » » в форуме Python
    0 Ответы
    33 Просмотры
    Последнее сообщение Anonymous
  • Мой XAML и С# больше не находят друг друга
    Anonymous » » в форуме C#
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Панды находят повторяющиеся пары между двумя столбцами данных
    Anonymous » » в форуме Python
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous

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