
Size: a a a











settings.gradle(.kts) теперь можно объявить репозитории для всех зависимостей проектов, component metadata rules и блокировку динамического версионирования (1.+)

StateFlow, SharedFlow, Channel


Application, Activity, Fragment, View, Service, BroadcastReceiver









@ViewModelScoped и @ActivityRetainedScoped








CoroutineScope и подружить синхронный мир с асинхронным.runBlocking(Dispatchers.Main) { ... } на UI потоке в Android приведет к deadlock вашего приложения. И это полностью ожидаемое поведение. В статье автор делает подробный разбор как происходит работа этого кода.