я стартую загрузку, спустя небольшое время экран закрывается и стартует другая активити
2) на второй активити я должен увидеть что данные или загружены(тогда их отобразить) или если ещё нет, то показать прогресс и когда загрузка завершится, отобразить их
может есть какие внутренние штуки уже в короутинах для такого ? или нужно самому всё писать типо какого-то кэша, и уже на втором экране пытатсья брать данные оттуда
спасибо )
А причем тут coroutines?
Можно сделать проще и без каналов. Примерно так: var task: Deferred<Unit>? = null fun startLoadOnScreen1() { task = async(UI) { doJob() } } fun waitForCompletionOnScreen2() { showProgress() launch(UI) { try { val result = task!!.await() showResult() } catch (e: Exception) { showError() } } }
Обсуждают сегодня