Mutable Live Data не выдает значение во Фрагменте Android

Во вью модели я с помощью AsFlow, создаю поток для LiveData, и в этом же потоке обрабатываю значение:

suspend fun waitResponseCode() : Integer? {
    flow = getCode()
    flow!!.collect {
        responseCode = (it)
        Log.d("RsLog","Now is responseCode $responseCode")
    }
    if (responseCode != null) {
        if (validateManager.onValidate(responseCode!!.toInt())) {
            cookieManager.saveCookie(getAuthData.getCookieData())
            isLoginMLD.value = true
        }
        else isLoginMLD.value = false
    }
    return responseCode
}

fun getCode() = responseCodeMld.asFlow().take(1)

Во фрагменте же, я подписываюь на эту же LiveData чтобы использовать пришедшее в нее значение, но почему то во фрагменте не срабатывает после того, как я применил выше asFlow. Пример кода во фрагменте такой:

  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    viewModel = activity?.let {
        ViewModelProvider(this)[AuthFragmentViewModel::class.java]
    } ?: throw Exception("Invalid Activity")
    viewModel.responseCodeMld.observe(viewLifecycleOwner,
        Observer {Log.d("RsLog","Nowser is responseCode ${viewModel.responseCodeMld.value.toString()}")  })
       
         }

Скажите пожалуйста в чем может быть проблема?Что делает такого AsFlow, что потом не могу получить значение этой же LiveData во фрагменте?


Ответы (0 шт):