Запустили первую альфа нового инструмента для трейсинг отрисовки Jetpack Compose. Новый инструмент доступен в Canary версии Android Studio Flamingo и позволит вам смотреть информацию по каждой Compose функции в отдельности, а не просто отрисовку кадра!
#androidstudio #compose
#androidstudio #compose
⚡23😐15🔥5
Forwarded from Kotlin Multiplatform Broadcast (Кирилл Розов)
Почему исключения в Kotlin Coroutines это сложно и как с этим жить?
Обработать ошибку в корутинах не так очевидно и просто порой как это описывают авторы. В статье разбираются
👉 разные примеры запуска корутин и обработка ошибок в них
👉 что будет происходить из-за structured concurrency
👉 CoroutineExceptionHandler
👉 Ключевые особенности обработки
Обработать ошибку в корутинах не так очевидно и просто порой как это описывают авторы. В статье разбираются
👉 разные примеры запуска корутин и обработка ошибок в них
👉 что будет происходить из-за structured concurrency
👉 CoroutineExceptionHandler
👉 Ключевые особенности обработки
👍24😐16
Вышла Java 19
👉 Паттерн-матчинг для switch (все еще превью)
👉 Паттерны записей (превью)
👉 Виртуальные потоки (или легковесный поток, схоже с корутинами). Конечно же тоже превью фичи
👉 Structured Concurrency (в инкубаторе, это даже раньше чем превью)
Kotlin и современные подходы драйвят Java, но вот Pattern Matching то что хотело бы увидеть в Kotlin
#java
👉 Паттерн-матчинг для switch (все еще превью)
👉 Паттерны записей (превью)
👉 Виртуальные потоки (или легковесный поток, схоже с корутинами). Конечно же тоже превью фичи
👉 Structured Concurrency (в инкубаторе, это даже раньше чем превью)
Kotlin и современные подходы драйвят Java, но вот Pattern Matching то что хотело бы увидеть в Kotlin
#java
😐35👍14🔥2
Improving app accessibility with Jetpack Compose
Лучшие практики по адаптации UI на Compose для обеспечения доступности вашего приложения людям с ограниченными возможностям. Хотите понять как хорошо адаптировано ваше приложения? Воспользуйтесь приложением Accessibility Insights на Android
#compose #accessibility
Лучшие практики по адаптации UI на Compose для обеспечения доступности вашего приложения людям с ограниченными возможностям. Хотите понять как хорошо адаптировано ваше приложения? Воспользуйтесь приложением Accessibility Insights на Android
#compose #accessibility
😐23👍7
Caching with OkHttp Interceptor and Retrofit
Руководство как заставить кэшировать все запросы в рамках одного OkHttp клиента
#network
Руководство как заставить кэшировать все запросы в рамках одного OkHttp клиента
#network
😐39👍21😁1
Набор KtLint и Detekt правил для статических проверок Jetpack Compose кода от Twitter. Список всех правил можно найти тут:
👉 Проверка работы с состоянием
👉 Соблюдение рекомендаций по объявлению Compose функций
👉 Модификаторы
#compose
👉 Проверка работы с состоянием
👉 Соблюдение рекомендаций по объявлению Compose функций
👉 Модификаторы
#compose
👍22😐10
Compose Component Builders (8 мин)
Руководство по созданию полноценных переиспользуемых Compose компонентов
#compose
Руководство по созданию полноценных переиспользуемых Compose компонентов
#compose
👍25😐15🤔4
Обновление Android Jetpack от 21 сентября 2022
👉 Activity 1.6.0: добавлены 2 новых ActivityResultContracts - PickVisualMedia и PickMultipleVisualMedia, которые будут открывать PhotoPicker или DocumentProvider в зависимости от возможностей Android. Также интегрирована поддержка OnBackInvokedCallback из Android 13 через OnBackPressedDispatcher
👉 Annotation 1.5.0 - миграция на Kotlin, теперь полноценно поддерживаются все специфичные для Kotlin места применения аннотаций
👉 Benchmark 1.2.0-alpha04 - поддержка аргумента
👉 DrawerLayout 1.2.0-alpha01 - поддержка OnBackInvokedCallback из Android 13
👉 Fragment 1.5.3 - исправление багов
#jetpack #jetpackupdate
👉 Activity 1.6.0: добавлены 2 новых ActivityResultContracts - PickVisualMedia и PickMultipleVisualMedia, которые будут открывать PhotoPicker или DocumentProvider в зависимости от возможностей Android. Также интегрирована поддержка OnBackInvokedCallback из Android 13 через OnBackPressedDispatcher
👉 Annotation 1.5.0 - миграция на Kotlin, теперь полноценно поддерживаются все специфичные для Kotlin места применения аннотаций
👉 Benchmark 1.2.0-alpha04 - поддержка аргумента
dryRunMode.enable в macrobenchmark, который предназначен для ускорения локального запуска👉 DrawerLayout 1.2.0-alpha01 - поддержка OnBackInvokedCallback из Android 13
👉 Fragment 1.5.3 - исправление багов
#jetpack #jetpackupdate
👍18😐13⚡1
Android Asset Packaging Tool 2.0 (AAPT2) release notes
Полезная дока с разбором изменений инструмент AAPT2, которая используется для компиляции и упаковки ресурсов. Из доки узнал что
Полезная дока с разбором изменений инструмент AAPT2, которая используется для компиляции и упаковки ресурсов. Из доки узнал что
android:paddingHorizontal можно использовать и он будет конвертирован в android:paddingLeft и android:paddingRight на старых версиях Android😐23👍5🔥2
Ликбез по диплинкам. Часть 2: диплинки с нуля
Продолжение погружения в работу с deep link. Во второй части разбирается как добавить deep link разных типов в Android приложение
Первая часть тут
Продолжение погружения в работу с deep link. Во второй части разбирается как добавить deep link разных типов в Android приложение
Первая часть тут
👍12😐11👏1🤯1
📺 App Quality Insights window in Android Studio (3 мин)
Демонстрация интеграции Firebase Crashlytics в Android Studio Electric Eel (сейчас в Beta). Теперь ходить в консоль не придется и все будет подсвечиваться сразу в IDE
Демонстрация интеграции Firebase Crashlytics в Android Studio Electric Eel (сейчас в Beta). Теперь ходить в консоль не придется и все будет подсвечиваться сразу в IDE
👍54🔥19😐6
📺 Android NDK. Как писать под Android на C++ (40 мин)
Задал кучу вопросов про работу с Android NDK. Уровень познания С++ и NDK у меня базовый, так что интересно видео будет таким же как я.
🎧 Подкаст версия здесь
Если у вас есть интересный опыт в разработке, которым вы хотите поделиться в формате доклада или интервью, то пишите
#AndroidBroadcast #ndk
Задал кучу вопросов про работу с Android NDK. Уровень познания С++ и NDK у меня базовый, так что интересно видео будет таким же как я.
🎧 Подкаст версия здесь
Если у вас есть интересный опыт в разработке, которым вы хотите поделиться в формате доклада или интервью, то пишите
kirill@androidbroadcast.dev#AndroidBroadcast #ndk
👍36😐8🏆5
Composable Functions (7 мин)
Как создавать собственный UI компонент на Compose: синтаксис, правильная работа с состоянием, делать быструю рекомпозицию и др. улучшения
📺 Видео версия (10 мин)
#compose #madskills
Как создавать собственный UI компонент на Compose: синтаксис, правильная работа с состоянием, делать быструю рекомпозицию и др. улучшения
📺 Видео версия (10 мин)
#compose #madskills
😐20👍12🔥2⚡1
Субботнее утро с подборкой самых интересных видео за неделю
📺 Less code: Composable functions - MAD Skills (10 мин)
📺 App Quality Insights window in Android Studio (3 мин)
📺 Google Dev News (3 мин)
📺 Android NDK. Как писать под Android на C++ (40 мин)
#подборкавидео
📺 Less code: Composable functions - MAD Skills (10 мин)
📺 App Quality Insights window in Android Studio (3 мин)
📺 Google Dev News (3 мин)
📺 Android NDK. Как писать под Android на C++ (40 мин)
#подборкавидео
😐13👍9🔥1👏1
📺 Свежие новости мобильной разработки (17 мин)
Давно я уже не делал контента один. Возвращаюсь в игры после долгого перерыва с короткого выпуска новостей для патронов! Дальше больше
📺 Версия для подписчиков на YouTube
🎧 Подкаст версия
#AndroidBroadcast #ТолькоДляПатронов
Давно я уже не делал контента один. Возвращаюсь в игры после долгого перерыва с короткого выпуска новостей для патронов! Дальше больше
📺 Версия для подписчиков на YouTube
🎧 Подкаст версия
#AndroidBroadcast #ТолькоДляПатронов
😐55👍14🔥3😁2🤔1
📄 Migrating the AOSP QuickSearchBox App to Kotlin (7 мин)
История рефакторинга стандартного приложения из AOSP с Java на Kotlin:
👉 Опыт автоматической конвертации и баги
👉 Сравнение производительности (на Kotlin стало быстрее, размер билда больше)
Мне стало интересно что там было на Java, если на Kotlin стало быстрее?
#compose
История рефакторинга стандартного приложения из AOSP с Java на Kotlin:
👉 Опыт автоматической конвертации и баги
👉 Сравнение производительности (на Kotlin стало быстрее, размер билда больше)
Мне стало интересно что там было на Java, если на Kotlin стало быстрее?
#compose
🤔16👍4😁4
Что нового в Android Gradle Plugin 7.3.0 (AS Doplhin)
👉 Поддержка произвольной билд системы для C/C++
👉 Kotlin 1.5.20 - минимально поддерживаемый
👉 Включена по умолчанию генерация App Bundle с Store Archival. Это специальная оптимизация на будущее для устройств с маленьким объемом памяти
👉 Вместо объявление пакета через
👉 Поддержка API Level 33 (Android 13)
👉 Поддержка произвольной билд системы для C/C++
👉 Kotlin 1.5.20 - минимально поддерживаемый
👉 Включена по умолчанию генерация App Bundle с Store Archival. Это специальная оптимизация на будущее для устройств с маленьким объемом памяти
👉 Вместо объявление пакета через
android:package в AndroidManifest.xml теперь надо использовать свойство namespace в build.gradle👉 Поддержка API Level 33 (Android 13)
🤔23👍13🔥3😁1
Jetpack Compose Accompanist TwoPane
Разбор TwoPaneLayout компонента из Compose, для построения UI в приложениях с поддержкой Foldable устройств
#compose
Разбор TwoPaneLayout компонента из Compose, для построения UI в приложениях с поддержкой Foldable устройств
#compose
👍10🤔3😁1
Неочевидное про Fragment API. Часть 2. (Не) создаем инстанс
Продолжение серии статей про современные возможности Fragment. В новой части рассказывается про создание объектов:
👉 FragmentContainerView
👉 Fragment.onInflate()
👉 FragmentFactory - передаем параметры в конструктор Fragment законно
👉 Транзакции без создания Fragment
👉 Передача layout res id в конструктор
#fragment
Продолжение серии статей про современные возможности Fragment. В новой части рассказывается про создание объектов:
👉 FragmentContainerView
👉 Fragment.onInflate()
👉 FragmentFactory - передаем параметры в конструктор Fragment законно
👉 Транзакции без создания Fragment
👉 Передача layout res id в конструктор
#fragment
👍27🔥4🤔3⚡2😁2