Kotlin API «launchWhenCreated» перестает прослушивать обновления базы данных после многократного выполнения.Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Kotlin API «launchWhenCreated» перестает прослушивать обновления базы данных после многократного выполнения.

Сообщение Anonymous »


В моей системной службе Android я использую «launchWhenCreated» для запуска сопрограммы в качестве наблюдателя, и она прослушивает обновления из пользовательского интерфейса. Если пользовательский интерфейс обновляет значение, оно будет сохранено в файле .pb(protobuf), а сопрограмма наблюдателя выполнит блок кода.

// Использование LifecycleCoroutineScope в этом { поток событий() lifecycleScope.launchWhenCreated { запуск (Диспетчеры.IO) { создавать() } запуск (Диспетчеры.IO) { stateFlow.collect { состояние -> если (состояние) { отлаживать() } } } } } частное развлечение EventFlow() { lifecycleScope.launchWhenCreated { запуск { mDBRepo.getValue() // //Выполняем этот код. } } } } В большинстве случаев это явление происходит правильно, но бывают случаи, когда выполнение блока кода просто прекращается после того, как пользовательский интерфейс обновляет какие-либо значения. Я уверен в таком поведении, поскольку вижу, что значения обновляются в файле protobuf(.pb), но вообще не вижу выполнения сопрограммы наблюдателя.

Если я перезагружаю телефон, все работает нормально.
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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