ANdroidsUA
前往频道在 Telegram
Телеграм-канал для Android-розробників та початківців. YouTube: youtube.com/c/RomanAndrushchenko Група для дискусій: https://uandcode.com/telegram/chat
显示更多526
订阅者
无数据24 小时
+17 天
无数据30 天
帖子存档
526
Сьогодні поділюсь посиланням на великий (дуже) лонг-рід про Kotlin Coroutines. Матеріал настільки обʼємний, що навіть браузер починає глючити при скролі 😄 Але зате в ньому є максимально детальне пояснення з прикладами, як взагалі працюють корутини в мові Kotlin та які механізми закладені всередині. В кінці статті також є пояснення більш приземлених речей - Job Cancellation, Structured Concurrency, Supervisor Scope і т.д.
https://proandroiddev.com/inside-kotlin-coroutines-state-machines-continuations-and-structured-concurrency-b8d3d4e48e62
526
Ще одна фішка Android Studio - це офіційна підтримка CPDD (Copy-Paste-Driven-Development 😄). Ви можете копіювати та вставляти код декілька разів підряд. Наприклад: виділяєте та копіюєте три різні фрагменти коду за допомогою комбінації клавіш Ctrl+C. Потім, в іншому місці - вставляєте їх в тому ж самому порядку, натиснувши три рази підряд комбінацію Ctrl+Shift+V, цифра 3 (якщо зкопіювали N фрагментів - то тоді натискайте відповідну цифру N). Також, можна вставляти зкопійовані фрагменти в інвертованому порядку: Ctrl+Shift+V, 1, Ctrl+Shift+V, 2, Ctrl+Shift+V, 3, ну або вручну вибирати потрібний фрагмент зі списку.
526
Багато хто з вас чув про GraphicsLayer в Jetpack Compose. Він дозволяє не тільки оптимізувати відображення графіки, а й реалізувати цікаві ефекти. Наприклад, в статті за посиланням нижче - наведено приклад CRT Screen Effect з готовим кодом:
https://www.sinasamaki.com/creating-a-crt-screen-effect-in-jetpack-compose/
526
Що робити, якщо ви випадково видалили код, і при цьому в проекті не використовується Git, і ви ще й закрили Android Studio та пішли відпочивати на вихідні? 😅
Для таких випадків, всі продукти на базі IntelliJ Platform, в тому числі і Android Studio, мають вбудований інструмент Local History. Достатньо натиснути правою кнопкою миші на каталог / пакет / модуль, в якому був видалений файл, потім вибрати пункт Local History -> Show History. В результаті з'явиться вікно з можливістю знайти видалений файл та відновити його командою Revert Selected and Later Changes.
526
Невелика фішка при наборі коду в Android Studio / IntelliJ - це швидкий перехід між словами: Ctrl + ← та Ctrl + → (в MacOS - Option замість Ctrl). Але додатково є також альтернативний варіант - переміщення курсору всередині слова. Для цього можна включити опцію Use CamelHumps words в Settings -> Editor -> General -> Smart Keys. Наочна різниця показана в прикріпленій анімації.
526
Jaewoong Eum опублікував плагін Compose Stability Analyzer для Android Studio, який в реальному часі показує стабільність параметрів Composable-функцій. Раніше для цього треба було запускати генерацію звіту, відкривати текстовий файл з результатами і вручну все перевіряти.
Тепер, зі встановленим плагіном, навпроти кожного параметру відразу видно кольоровий індикатор стабільності.
Плагін доступний в Marketplace, можна встановити через Android Studio: Settings -> Plugins -> Marketplace -> Compose Stability Analyzer -> Install.
Посилання на GitHub: https://github.com/skydoves/compose-stability-analyzer
Посилання на плагін: https://plugins.jetbrains.com/plugin/28767-compose-stability-analyzer
526
Привіт 🙂 Зараз в телеграмі майже нічого не публікую, але можна спробувати це змінити. Пропоную прийняти участь в голосуванні, який контент ви б хотіли в подальшому тут бачити (можна вибрати декілька варіантів).
526
На цих вихідних буде прямий ефір з розбором коду. Попередньо - спробую запустити в суботу о 17-00. Якщо ж будуть відключення світла - тоді перенесу на пізніший час, або на наступний день.
https://youtube.com/live/ffPR1t0g5uM
526
Сьогодні десь о 17-00 запущу стрім… на Windows на Twitch (https://www.twitch.tv/randrushchenko), тому що в Linux провів "успішні" експерименти з драйверами 😂 В планах - проходження кампанії SC II Wings of Liberty 2010-го року. Також буду відповідати на запитання, якщо будуть. А поки можете вибрати складність вище ^
526
Знаєте, хто такий Jaewoong Eum? Google Developer Expert (GDE) з Android, Kotlin та Firebase одночасно, а також топ-1 розробник Open-Source Android-бібліотек у світі. Недавно він виступив на конференції DroidKaigi 2025 (Токіо). І гарна новина в тому, що він погодився на публікацію на моєму каналі повного перекладу його доповіді про створення Android-бібліотек. Інформація також актуальна і для багатомодульних проектів. У доповіді піднімаються питання роботи з API, Binary Compatibility, транзитивними залежностями, ресурсами, і багато чого іншого. Детальний план виступу прописаний в тайм-кодах до відео.
https://youtu.be/LGfqaQ1qFy8
Прем'єра сьогодні о 17-00 (це не прямий ефір, відео було записано зарані та змонтовано, але лайв-чат буде)
Але і це ще не все 😊 Jaewoong Eum запропонував знижку 30% на електронну версію його книги Manifest Android Interview, перекладену українською мовою. Придбати зі знижкою можна за посиланням (кількість обмежена): https://leanpub.com/manifest-android-interview-uk/c/XoP1zeuGbry7
526
Сьогодні о 17-00 планується стрім, тематика - лайв-кодинг та запитання-відповіді:
https://www.youtube.com/watch?v=a_pJLj2jx2M
526
Сьогодні буде рандомний стрім о 19-00. Тематика: 1) експерименти з Claude Code, спробую щось зробити не по Android 😄 2) запитання-відповіді, якщо такі будуть.
https://youtube.com/live/1ThBK-qVUcg
526
І знову настав час експериментів 😄 Приклад використання незадокументованої фішки Hilt, яка дозволяє підключити його до чистого Kotlin-модуля (наприклад, для того, щоб написати байдінг інтерфейсів та реалізацій юз-кейсів в домейн-шарі):
https://medium.com/@rom.andrushchenko/how-to-use-hilt-in-pure-kotlin-modules-f1e0c3b470b5
526
Завтра в суботу буде стрім, початок о 17-00:
https://www.youtube.com/watch?v=eJToB9FDwQA
Тематика: 1) лайв-кодинг, міграція коду з одного старого відео по компоузу 2) запитання-відповіді, якщо будуть.
526
Сьогодні о 17-00 буде стрім:
https://www.youtube.com/watch?v=1Hwnj3jIkCQ
Тематика: відповіді та запитання (якщо будуть) та скоріш за все розгляд однієї MVI-бібліотеки.
526
П'ятниця на дворі, час фан-кодингу 😄
Множинне наслідування в Kotlin (та і в Java теж так можна):
https://medium.com/@rom.andrushchenko/multi-inheritance-using-marker-interfaces-fun-coding-probably-not-684a7cce5ce0
В двох словах: робимо так, щоб інтерфейси фактично працювали як абстрактні класи.
526
Android-проект з нуля №4 - Приклад підготовки Gradle-скриптів (на мові Kotlin), на базі каталогу buildSrc:
https://youtu.be/d_ie1OPXO44
526
Android-проект з нуля №3 - Встановлення та налаштування середовища розробника: Android Studio, Android SDK, JDK та Git.
https://youtu.be/C3zyvKpevcA
