Binder - как устроена работа с несколькими процессами в Android
ฝัง
- เผยแพร่เมื่อ 7 ก.ค. 2024
- Большой обзорный доклад про межпроцессное взаимодействие в Android и погружение глубже в детали работы. Binder - самый важный компонент системы и откуда взялись ограничения на Bundle
👨🎓 Эксперт - Андрей Белоус, Android разработчик в Bumble, abdev.by/jil
Хотите поделиться опытом? Есть готовые темы или разрабатываете что-то нестандартное?
✉️ Пишите на почту kirill@androidbroadcast.dev
🔗 Генеральный партнер Android Broadcast - AvitoTech abdev.by/jpW
🔗 Telegram канал "Android Broadcast" ttttt.me/android_broadcast
💰 Поддержать проект на Boosty boosty.to/androidbroadcast
🔗 Чат сообщества в Telegram ttttt.me/android_broadcast_talks
🔗 Telegram канал "Kotlin Broadcast" ttttt.me/kotlin_broadcast
🔗 Слайды к докладу abdev.by/JaN
🔗 Binder transactions in the bowels of the linux kernel abdev.by/msU
🔗 Android Binder abdev.by/ZdC
🔗 Deep Dive into Android IPC/Binder Framework abdev.by/5fO
🔗 Digging Into Android System Services abdev.by/Lgb
🔗 Two Android Applications, A Shared UI Element, And A Shared Process: A Tale Of ClassLoaders And Confusion abdev.by/ih3
🔗 Analysis of ProcessState and IPCThreadState of Binder abdev.by/pj6
#androiddev #android #программирование #kotlin #КириллРозов #андроид #androidbroadcast #ipc #binder #androidos
00:00 Вступление
01:11 Об эксперте
01:39 Содержание
02:23 Что такое процесс
02:54 Жизненный цикл процесса
04:11 Запущенные процессы
04:50 Процесс приложений
05:10 Создание процесса
05:51 Процессы в Android
10:26 Межпроцессное взаимодействие (IPC)
11:56 IPC в Android
12:43 ResultReceiver
13:07 Возможности Intent + putExtra(...)
14:13 Content provider
15:46 Messenger
16:59 Handler
17:24 Реализация Messenger
19:31 Binder
21:39 Как устроен Binder под капотом
23:38 Интеграция Android Broadcast
24:27 Что умеет Binder?
27:12 Binder API
28:01 OS Parcel
28:27 Интерфейс Parcelable
29:31 AIDL
31:21 Работа AIDL на примере сложения
37:02 Другой взгляд на взаимодействие
37:40 binder/Parcel
39:21 Особенности работы с Parcel
39:47 Binder interaction flow
41:07 Binder commands
41:34 Структура binder_write_read
42:24 Вызов binder_ioctl()
43:39 IPCThreadState
44:58 Типы Binder команд
45:38 Пример IPCThreadState
49:52 Немного практики/интересные юзкейсы
50:20 Список сервисов, adb shell
50:49 Получение AlarmManager
53:09 Вызов системного сервиса через ADB
53:54 Где Binder используется в Android
55:24 Полезные материалы
56:00 Заключение
56:07 Как выступить в Android Broadcast
🔗 Telegram канал "Android Broadcast" ttttt.me/android_broadcast
💰 Поддержать проект на Boosty boosty.to/androidbroadcast
🔗 Чат сообщества в Telegram ttttt.me/android_broadcast_talks
🔗 Telegram канал "Kotlin Broadcast" ttttt.me/kotlin_broadcast
Спасибо Кирилл за то что приглашаешь интересных спикеров. Всегда очень информативные доклады на интересные темы! И конечно же спасибо Андрею за доклад.
Андрей сам вызвался, но я всегда рад помочь во всем и дать место где хороший материал найдет множество зрителей!
Это очень интересно. И то, что нам проводят экскурсию на такие слои Андроида - это очень, очень здорово.
Спасибо. Суперское видео!
Бомбический контент! Очень глубокое погружение в тему) Спасибо!
Закончил смотреть и закурил
Ох, как давно не хватало такого выпуска!))
Спасибо за полезную информацию 👍
Невероятно полезная инфа, спасибо огромное
Спасибо, очень интересно. Погружение в детали работы всегда приветствуется :)
очень классный выпуск, тот контент, которого мне давно не хватало
Спасибо. То что мне надо
Спасибо, было интересно)
Андрей, спасибо! очень интересный доклад!)
Кирилл, спасибо, что организовал)
Очень крутой доклад, спасибо!
Кирилл, огромное спасибо тебе за качественный контент!
Да, видос огонь!
Очень интересно и полезно. Скачал и занесло в избранное.
интересно, спасибо большое)
Годнота однако!
Даже не заметил как всё прослушал) топи
на 2:32 диалог архитектора из Матрицы)) Интересно!
Да хорош уже такие крутые видосы пилить, где время на все это найти, чтобы посмотреть???
P.S. шучу, шучу - продолжай =)
Интересно
доклад збс
Ого, ты похудел.
Ничего не понятно, но очень интересно
Я только не понимаю: примеры на Kotlin написаны? Это первое видео по андроид, которое я нашёл. А, так, очень интересно
Я создавал observable переменную в companion object сервиса и подписывался на него из активити. Скажите, так вообще корректно делать или это не очень хорошая практика? И да, спасибо за доклад!
Нужно полностью знать задачу для чего, но лучше такое спрашивать в t.me/android_broadcast_talks
"есть проект на гитхабе, где все эти возможности рассмотрены". не вижу ссылку на проект(
было интересно до момента когда начали описывать состояния процесса, может быть прерван из за Context свитчинга например. ребята, если вы делаете прям для начинающих, в базу, чтобы было максимально понятно, почему бы и другие вещи не объяснять тоже максимально понятно? ок, вот давайте, процесс. прочитал по бумажке, ок. потом про состояния, понятно что это абстракция, но она у вас в воздухе висит. вы когда строите дом, у вас что нибудь в воздухе висит? почему тут так же? почему не объяснить кто вообще этим состоянием процесса управляет, почему он это делает? кто меняет и вот это вот все, нормально только...
Я погрузился на дно ipc и оттолкнулся ото дна в надежде не захлебнуться информацией и выплыть на поверхность.... 10 водолазов из 10 🤿
😂😂😂
материал интересный, но боже подача! чел какой же ты скучный и унылый -еле досмотрел