#ViewPager
ViewPager2 — digging the internal API to make it work with DiffUtil
Google больше не поддерживает ViewPager первой версии и рекомендует переходить на ViewPager 2.0, реализованный на основе RecyclerView, что позволяет использовать все его возможности.
Статья концентрируется на том как правильно настроить DiffUtil с ViewPager 2.0
ViewPager2 — digging the internal API to make it work with DiffUtil
Google больше не поддерживает ViewPager первой версии и рекомендует переходить на ViewPager 2.0, реализованный на основе RecyclerView, что позволяет использовать все его возможности.
Статья концентрируется на том как правильно настроить DiffUtil с ViewPager 2.0
Medium
ViewPager2 — digging the internal API to make it work with DiffUtil
Here I will show an example of using ViewPager2 with mutable fragments collection with DiffUtil and what problems are hidden there
#AndroidBroadcast
Просто интервью с Артемом Зиннатуллиным@Lyft
Когда: Пятница, 31 июля, 10:00 (GMT+3)
Просто интервью обо всем: работе, переезде, работе менеджером и куда идти после IT
Гость выпуска - Артем Зиннатуллин, Staff Software Engineer в Lyft. Работает над билд системами, дев тулингом, CI, библиотеками, инфраструктурой. До этого занимался мобильной разработкой, делал RxJava, Spek и другие. Ищет выход из IT
Просто интервью с Артемом Зиннатуллиным@Lyft
Когда: Пятница, 31 июля, 10:00 (GMT+3)
Просто интервью обо всем: работе, переезде, работе менеджером и куда идти после IT
Гость выпуска - Артем Зиннатуллин, Staff Software Engineer в Lyft. Работает над билд системами, дев тулингом, CI, библиотеками, инфраструктурой. До этого занимался мобильной разработкой, делал RxJava, Spek и другие. Ищет выход из IT
YouTube
Ламповые посиделки. Артем Зиннатуллин@Lyft
#AndroidBroadcast #ArtemZinnatullin #Lyft
Просто интервью обо всем: работе, переезде и куда идти после IT
Гость выпуска - Артем Зиннатуллин, Staff Software Engineer в Lyft. Работает над билд системами, дев тулингом, CI, библиотеками, инфраструктурой. До…
Просто интервью обо всем: работе, переезде и куда идти после IT
Гость выпуска - Артем Зиннатуллин, Staff Software Engineer в Lyft. Работает над билд системами, дев тулингом, CI, библиотеками, инфраструктурой. До…
#Coroutines #Kotlin14
Kotlin 1.4.0-RC: Debugging coroutines
Большое улучшение дебагера для Coroutine уже здесь и для этого вам нужен Kotlin 1.4. Новинки:
👉 Новый отдельный таб в дебаггере Idea "coroutines"
👉 Возможность просматривать все Coroutine которые выполняются и приостановлены
👉 Возможность проверить состояние любой coroutine и значения локальных и captured переменных
👉 Полный stacktrace создания coroutine
👉 Возможность получения отчета о состоянии каждой coroutine и ее стека
Пока все это работает только на Kotlin/JVM
Kotlin 1.4.0-RC: Debugging coroutines
Большое улучшение дебагера для Coroutine уже здесь и для этого вам нужен Kotlin 1.4. Новинки:
👉 Новый отдельный таб в дебаггере Idea "coroutines"
👉 Возможность просматривать все Coroutine которые выполняются и приостановлены
👉 Возможность проверить состояние любой coroutine и значения локальных и captured переменных
👉 Полный stacktrace создания coroutine
👉 Возможность получения отчета о состоянии каждой coroutine и ее стека
Пока все это работает только на Kotlin/JVM
The JetBrains Blog
Kotlin 1.4.0-RC: Debugging coroutines | The Kotlin Blog
We continue to highlight the upcoming changes in 1.4 release. In this blogpost, we want to describe a couple of important features related to coroutines:
New functionality to conveniently debug corou
New functionality to conveniently debug corou
#AndroidStudio #Gradle #Performance
Understanding your build with the Build Analyzer
В Android Studio (AS) 4.0 появилась возможность проанализировать скорость сборки вашего и увидеть визуализацию этого.
Рекомендую всем после установки AS 4.0 и выше сделать Clean Build и посмотреть есть ли у вас проблемные места в сборке и где они
Understanding your build with the Build Analyzer
В Android Studio (AS) 4.0 появилась возможность проанализировать скорость сборки вашего и увидеть визуализацию этого.
Рекомендую всем после установки AS 4.0 и выше сделать Clean Build и посмотреть есть ли у вас проблемные места в сборке и где они
Medium
Understanding your build with the Build Analyzer
As members of the Android Developer Tools team, my teammates and I come to work each day to build tools intended to make Android the best…
#AndroidGradlePlugin #Gradle #KotlinDSL
New APIs in the Android Gradle Plugin
Статья с обзором изменений в Android Gradle Plugin (AGP) 4.1. Нас ждет:
👉 Полная поддержка Gradle Kotlin DSL. Добились этого за счет выделения интерфейсов API и они написаны на Kotlin
👉 Опубликована новая документация по API AGP
👉 Новое Variant API (пример использования здесь), упрощающее работы с Tasks AGP и зависимостями на них
👉 Новое Artifcat API (пример использования здесь), которое позволяет эффективно управлять артефактами сборки Android проектов
Старое API останется работать и пока не будет удалено, но разработчиком Gradle плагинов стоит обратить внимание на изменения
New APIs in the Android Gradle Plugin
Статья с обзором изменений в Android Gradle Plugin (AGP) 4.1. Нас ждет:
👉 Полная поддержка Gradle Kotlin DSL. Добились этого за счет выделения интерфейсов API и они написаны на Kotlin
👉 Опубликована новая документация по API AGP
👉 Новое Variant API (пример использования здесь), упрощающее работы с Tasks AGP и зависимостями на них
👉 Новое Artifcat API (пример использования здесь), которое позволяет эффективно управлять артефактами сборки Android проектов
Старое API останется работать и пока не будет удалено, но разработчиком Gradle плагинов стоит обратить внимание на изменения
Medium
New APIs in the Android Gradle Plugin
Co-authored with Jerome Dochez
#Gradle #Cache
Configuration Caching deep dive
Одним из узких мест Gradle сборки является фаза конфигурации. Сейчас она происходит всегда при запуске любого таска, даже если ваш проект не поменялся.
В Gradle 6.6 появилась экспериментальная возможность, которая позволяет кэшировать информацию о графе task-ов. Команда Android Gradle Plugin (AGP) сразу же взяли ее на исследование для применения в AGP
В статье разбирается принципы работы этой фичи и как ее адаптировать
Поддержка этой возможности будет в Kotlin 1.4. Больше подробностей о поддержке в других Gradle плагинах можно найти здесь.
Configuration Caching deep dive
Одним из узких мест Gradle сборки является фаза конфигурации. Сейчас она происходит всегда при запуске любого таска, даже если ваш проект не поменялся.
В Gradle 6.6 появилась экспериментальная возможность, которая позволяет кэшировать информацию о графе task-ов. Команда Android Gradle Plugin (AGP) сразу же взяли ее на исследование для применения в AGP
В статье разбирается принципы работы этой фичи и как ее адаптировать
Поддержка этой возможности будет в Kotlin 1.4. Больше подробностей о поддержке в других Gradle плагинах можно найти здесь.
Medium
Configuration caching deep dive
What is configuration caching?
#Firebase
Product news and other highlights from Firebase Live
Команда Firebase представила новинки:
👉 Новый UI эмулятора для локальной разработки (видео)
👉 Упрощение процесса написания и тестирования правил безопасности (видео)
👉 Поддержка "Sign in with Apple" (видео)
👉 Поддержка платежей с помощью Stripe
👉 Улучшение деплоя моделей TensorFlow Lite. ML Model Managment API для управления моделями через CLI
👉 Crashlytics BigQuery streaming - возможость в реальном времени получать креши
Product news and other highlights from Firebase Live
Команда Firebase представила новинки:
👉 Новый UI эмулятора для локальной разработки (видео)
👉 Упрощение процесса написания и тестирования правил безопасности (видео)
👉 Поддержка "Sign in with Apple" (видео)
👉 Поддержка платежей с помощью Stripe
👉 Улучшение деплоя моделей TensorFlow Lite. ML Model Managment API для управления моделями через CLI
👉 Crashlytics BigQuery streaming - возможость в реальном времени получать креши
The Firebase Blog
Product news and other highlights from Firebase Live
Our team is driven by the belief that apps have drastically improved the way we live, work, learn, and socialize, keeping us connected to each other and plugged into the information we need. Now more than ever, we understand the importance of supporting our…
#Performance #AppStart #Realm
Сказ о том, как каскадное удаление в Realm долгий запуск победило
История оптимизации приложения ДоДо Пицца, у которых он стал достигать 20 секунд. В статье разбирается как замерить старт, анализировать проблему и ее исправить.
В случае ребят проблемой была БД RealM и отсутствие каскадного удаления. Ребята реализовали это сами, чем сделали старт приложения мгновенным.
Сказ о том, как каскадное удаление в Realm долгий запуск победило
История оптимизации приложения ДоДо Пицца, у которых он стал достигать 20 секунд. В статье разбирается как замерить старт, анализировать проблему и ее исправить.
В случае ребят проблемой была БД RealM и отсутствие каскадного удаления. Ребята реализовали это сами, чем сделали старт приложения мгновенным.
Хабр
Сказ о том, как каскадное удаление в Realm долгий запуск победило
Все пользователи считают быстрый запуск и отзывчивый UI в мобильных приложениях само собой разумеющимся. Если приложение запускается долго, пользователь начинает грустить и злиться. Запросто можно...
#Kotlin #Inline
Kotlin’s Noinline & Crossline, once for all
В работе не так часто приходится использовать inline функции. Ещё реже приходится использовать модификаторы "инлайнинга", поэтому работа noinline и crossinline для не опытных разработчиков может быть весьма не очевидна и не совсем понятно для чего они существуют.
Автор статьи на примерах показывает принципы работы как самого "инлайнинга", так и его модификаций, какие ошибки может вызвать неправильное "встраивание" и показывает несколько нюансов при работе с подобными функциями.
Kotlin’s Noinline & Crossline, once for all
В работе не так часто приходится использовать inline функции. Ещё реже приходится использовать модификаторы "инлайнинга", поэтому работа noinline и crossinline для не опытных разработчиков может быть весьма не очевидна и не совсем понятно для чего они существуют.
Автор статьи на примерах показывает принципы работы как самого "инлайнинга", так и его модификаций, какие ошибки может вызвать неправильное "встраивание" и показывает несколько нюансов при работе с подобными функциями.
Medium
Kotlin’s Noinline & Crossline, once for all
Explaining the Kotlin’s noinline and crossinline keywords, with a simple example, once for all.
#ConstraintLayout #MotionLayout
ConstraintLayout 2.0.0 rc1
Прошло всего несколько лет и наконец-то мы дошли до RC ConstrantLayout 2.0, который включает MotionLayout
ConstraintLayout 2.0.0 rc1
Прошло всего несколько лет и наконец-то мы дошли до RC ConstrantLayout 2.0, который включает MotionLayout
Android Studio Release Updates
ConstraintLayout 2.0.0 rc1
We are happy to announce the release candidate of ConstraintLayout 2.0. As this might be the final release before stable, we encourage peopl...
#MotionLayout
Motion Tags Ep1 - MotionLayout + MotionScene
Google запустила серию уроков по MotionLayout. В первом видео рассматривается <MotionScene> и MotionLayout
Motion Tags Ep1 - MotionLayout + MotionScene
Google запустила серию уроков по MotionLayout. В первом видео рассматривается <MotionScene> и MotionLayout
YouTube
MotionLayout + MotionScene - Motion Tags #1
Welcome to the Motion Tags series, in this series of short clips, we will introduce you to all the tags associated with MotionLayout. In this episode, we’re going to start by talking about MotionLayout and MotionScene.
Manage motion and widget animation…
Manage motion and widget animation…
#MotionEditor
Introducing the Motion Editor
Motion Editor - это новый инструмент в Android Studio 4.0, призванный упростить работу с анимацией при помощи нового MotionLayout и специального визуального редактора. В статье рассказывается обо всех основных инструментах редактора.
Introducing the Motion Editor
Motion Editor - это новый инструмент в Android Studio 4.0, призванный упростить работу с анимацией при помощи нового MotionLayout и специального визуального редактора. В статье рассказывается обо всех основных инструментах редактора.
Android Developers Blog
Introducing the Motion Editor
Posted by Scott Swarthout, Product Manager We spoke with the Android developer community and learned that animations are important for ...
#ConstraintLayout
Design Tools Suite UX enhancements in Android Studio 4.1
Обзор изменений визуального редактора в следующей мажорной версии - Android Studio 4.1.
UI Editor:
👉 Поддержка Constraint Layout 2.0: VirtualLayouts
👉 Возможность включения/выключения показа
👉 Управление visibility в дереве компонентов
👉 Shortcut клавиатуры для Design Tool
👉 Панель для трансформаций свойств View: X, Y, Z, rotation, scale, translation
Resource manager:
👉 Визуализация ресурса картинки в XML аттрибуте теперь позволяет быстро его поменять с предпросмотром и поиском
👉 Material иконки не являются частью Android Studio и будут обновляться независимо
Navigation editor:
👉 Визуализация Destionations Tree (похожее на Component Tree в UI Designer)
👉 Диалог для создания deeplink с поддержкой автодополнения
Motion editor
👉 Motion keyframe path graph
👉 Редактор "Transition curve", который позволяет визуально редактировать интерполятор анимации
Design Tools Suite UX enhancements in Android Studio 4.1
Обзор изменений визуального редактора в следующей мажорной версии - Android Studio 4.1.
UI Editor:
👉 Поддержка Constraint Layout 2.0: VirtualLayouts
👉 Возможность включения/выключения показа
tools
(например tools:text
, tools:visibility
) эффектов в Preview👉 Управление visibility в дереве компонентов
👉 Shortcut клавиатуры для Design Tool
👉 Панель для трансформаций свойств View: X, Y, Z, rotation, scale, translation
Resource manager:
👉 Визуализация ресурса картинки в XML аттрибуте теперь позволяет быстро его поменять с предпросмотром и поиском
👉 Material иконки не являются частью Android Studio и будут обновляться независимо
Navigation editor:
👉 Визуализация Destionations Tree (похожее на Component Tree в UI Designer)
👉 Диалог для создания deeplink с поддержкой автодополнения
Motion editor
👉 Motion keyframe path graph
👉 Редактор "Transition curve", который позволяет визуально редактировать интерполятор анимации
Medium
Design Tools Suite UX enhancements in Android Studio 4.1
The Design Tools Suite in Android Studio is a collection of tools that aims to support developers in effectively designing, prototyping…
(* исправленно) Привет. Это Кирилл. автор канала. Очень важно понять в какое время организовывать прямы трансляции на YouTube канале. Голосуйте что вам подходит. Часовой пояй GMT+3 и можно выбрать несколько вариантов.
Final Results
5%
Утро 09:00
7%
Утро 10:00
22%
Вечер 19:00
35%
Вечер 20:00
51%
Смотрю в записи
11%
Не смотрю YouTube канал Android Broadcast
10%
Не знаю про канал
1%
Другой вариант (пишите в чате)
4%
Не участвую в опросе
Android Broadcast
(* исправленно) Привет. Это Кирилл. автор канала. Очень важно понять в какое время организовывать прямы трансляции на YouTube канале. Голосуйте что вам подходит. Часовой пояй GMT+3 и можно выбрать несколько вариантов.
Для всех тех кто не знал про канал рекомендую зайти, посмотреть, подписаться и ставить лайки. Это очень мотивирует на работу youtube.com/c/androidBroadcast
YouTube
Android Broadcast. Все об Андроид разработке
Всё о современной разработке под Android от экспертов индустрии
Автор канала — Кирилл Розов, 10+ лет опыта в разработке, https://t.iss.one/rozov_blog
Telegram канал с новостями и лучшими статьями по Android разработке https://t.iss.one/android_broadcast
Реклама…
Автор канала — Кирилл Розов, 10+ лет опыта в разработке, https://t.iss.one/rozov_blog
Telegram канал с новостями и лучшими статьями по Android разработке https://t.iss.one/android_broadcast
Реклама…
#Android11 #Security
Exploring Android 11: Data Access Auditing
Одной из новинок Android 11 является возможность отслеживать какой код обращается к пользовательским данным. Для этого используйте новое Data Access Auditing API. API отслеживает обращение из вашего кода, так и сторонних библиотек, подключенных к проекту.
В статье разбирается как использовать новое API в вашем приложении
Exploring Android 11: Data Access Auditing
Одной из новинок Android 11 является возможность отслеживать какой код обращается к пользовательским данным. Для этого используйте новое Data Access Auditing API. API отслеживает обращение из вашего кода, так и сторонних библиотек, подключенных к проекту.
В статье разбирается как использовать новое API в вашем приложении
Joe Birch
Exploring Android 11: Data Access Auditing
When building applications, user privacy is shifting more and more to the core of development values throughout the ecosystem. Aligned with this, Android 11 brings in a collection of changes to help improve the approaches to the privacy of user data in our…
#AndroidStudio
What’s New in Android Studio System Trace
В статье рассказывает об обновлениях в System Trace - утилите в Android Studio для отслеживания записи активности устройства: CPU, GPU, системных процессов и др.
👉 Секции в окне Profiler
👉 Улучшение навигации
👉 Улучшение данных в "Analysis Panel"
👉 Исправление багов
What’s New in Android Studio System Trace
В статье рассказывает об обновлениях в System Trace - утилите в Android Studio для отслеживания записи активности устройства: CPU, GPU, системных процессов и др.
👉 Секции в окне Profiler
👉 Улучшение навигации
👉 Улучшение данных в "Analysis Panel"
👉 Исправление багов
Medium
What’s new in Android Studio System Trace
Highlights of the CPU Profiler improvements in Android Studio 4.0 and 4.1 Beta
#AndroidBroadcast #Architecture #FunctionalProgramming
The ELM Arhitecture. Функциональное программирование на Android (Livestream)
Где: YouTube канал "Android Broadcast"
Когда: среда, 5 августа, 20.00 (GMT+3)
The Elm Architecture – архитектура для UI-приложений, популярная в сообществе Elm-разработчиков. Она использует функциональное программирование, для того чтобы создавать корректные и легко масштабируемые приложения. Чистые функции и единое управление состоянием дают несколько иные инструменты абстракции, нежели традиционная Clean Arch, предоставляя больше гибкости и контроля над логикой
Все кто любит функциональное, реактивное программирование, а также подходы и архитектуры, основанные на этих принципах, будет интересно.
В гостях - Михаил Левченко, Android разработчик в Автo.ру. Любитель функционального программирования, Автор Telegram канала "Сохранёнки Джейка Вортона"
The ELM Arhitecture. Функциональное программирование на Android (Livestream)
Где: YouTube канал "Android Broadcast"
Когда: среда, 5 августа, 20.00 (GMT+3)
The Elm Architecture – архитектура для UI-приложений, популярная в сообществе Elm-разработчиков. Она использует функциональное программирование, для того чтобы создавать корректные и легко масштабируемые приложения. Чистые функции и единое управление состоянием дают несколько иные инструменты абстракции, нежели традиционная Clean Arch, предоставляя больше гибкости и контроля над логикой
Все кто любит функциональное, реактивное программирование, а также подходы и архитектуры, основанные на этих принципах, будет интересно.
В гостях - Михаил Левченко, Android разработчик в Автo.ру. Любитель функционального программирования, Автор Telegram канала "Сохранёнки Джейка Вортона"
#Gradle
How to use Composite builds as a replacement of buildSrc in Gradle
Gradle имеет возможность добавлять собственную логику в buildSrc, минус которой в том, что при любом малейшем изменении она приводит к полному сбросу build кэша.
Альтернативой buildSrc представляется Composite Builds. В статье разбирается:
👉 разница между этими 2 подходами
👉 как мигрировать с buildSrc на Composite Builds
👉 проблемы с которыми можно столкнуться и как их решать
How to use Composite builds as a replacement of buildSrc in Gradle
Gradle имеет возможность добавлять собственную логику в buildSrc, минус которой в том, что при любом малейшем изменении она приводит к полному сбросу build кэша.
Альтернативой buildSrc представляется Composite Builds. В статье разбирается:
👉 разница между этими 2 подходами
👉 как мигрировать с buildSrc на Composite Builds
👉 проблемы с которыми можно столкнуться и как их решать
Medium
How to use Composite builds as a replacement of buildSrc in Gradle
Gradle buildSrc approach has one major flaw — it invalidates a build cache on any change. In this article, describe how to avoid it.
Найти ссылку на посте не всем оказывается очевидно. Поэтому и возник опрос.
Стоит ли добавлять кнопку под постом с переход на источник?
Стоит ли добавлять кнопку под постом с переход на источник?
Final Results
47%
Да
20%
Нет
30%
Все равно
4%
Не участвую в опросе