Тег «android»
Multibinding в Hilt — как собрать зависимости в Set и Map
Зачем нужны @IntoSet и @IntoMap, как модули из разных фич складываются в одну коллекцию, почему без Provider всё создаётся на старте, что реально генерирует Dagger и как читать его ошибки компиляции.
Intent и intent-фильтры — как приложения зовут друг друга и как на этом ловят
Из чего собирается Intent, чем явный отличается от неявного, как система выбирает получателя по трём тестам, что обязательно писать в манифесте, что ужесточили в Android 12–15 и почему intent-фильтр — не защита, а через проброшенный чужой интент открывают ваши закрытые экраны.
Как проходит мобильное system design интервью
Что на самом деле оценивает интервьюер, как за пять минут собрать требования, зачем рисовать высокоуровневую схему и какие развилки — пагинация, хранение, offline — вытаскивают почти на каждом собеседовании. Разбор на сквозной задаче «спроектируйте ленту».
Где у Android-приложения main() — от Zygote до onCreate
В Android нет привычной точки входа, но она есть — ActivityThread.main(). Разбираем всю цепочку запуска: init и Zygote, fork с copy-on-write, Looper главного потока, bindApplication, ClientTransaction — и почему из этого следуют ANR, медленный холодный старт и странные кадры в стектрейсах.
Как Jetpack Compose работает внутри — composer, slot table и рекомпозиция
Что компилятор дописывает в @Composable-функцию, зачем ей скрытый параметр Composer и битовая маска $changed, как gap buffer хранит состояние UI и почему рекомпозиция — это не рекурсия.
Structured concurrency и исключения в корутинах
Как устроено дерево корутин, почему падение одного ребёнка отменяет весь scope, что реально делает SupervisorJob и где ставить try/catch, чтобы он сработал. С проверкой всех спорных мест на kotlinx-coroutines 1.10.2.
Как устроено Android-приложение внутри системы — песочница, права и дыры через exported и ContentProvider
Разбираем, что такое APK и куда он устанавливается, как система изолирует данные приложения по UID, как работают пермишены и ограничения песочницы, и почему открытые компоненты и криво написанный ContentProvider превращаются в дыру.
FileProvider на Android — как делиться файлами и не словить краш
Разбираемся, почему Android запретил file://-ссылки, что такое FileProvider, чем он отличается от ContentProvider, как его настроить, выдать права другому приложению и не наделать дыр в безопасности.