#Fragment
Simplifying the FragmentManager API: Multiple Fragment backstacks on Android
Обсуждение поддержки множества back stack для Fragment API - уже долго обсуждаемая тема. Особенно это стало важно, когда шаблон "Bottom Navigation" набрал популярность. Пока все ждут стандартной реализации (о которой разработчики Fragment уже говорят), можно сделать собственный вариант. Пример этого можно найти в статье.
Simplifying the FragmentManager API: Multiple Fragment backstacks on Android
Обсуждение поддержки множества back stack для Fragment API - уже долго обсуждаемая тема. Особенно это стало важно, когда шаблон "Bottom Navigation" набрал популярность. Пока все ждут стандартной реализации (о которой разработчики Fragment уже говорят), можно сделать собственный вариант. Пример этого можно найти в статье.
Medium
Simplifying the FragmentManager API: Multiple Fragment backstacks on Android
Fragments in Android are many things to different people. View controllers, state containers, callback hooks to system events like…
#Architecture #Reactive
Building a system of reactive components with Kotlin
Продолжение рассказа о том, какую архитектуру используют в Badoo для разработки приложений. В новой статье речь зайдет о базовых блоках для построения реактивной архитектуры
Building a system of reactive components with Kotlin
Продолжение рассказа о том, какую архитектуру используют в Badoo для разработки приложений. В новой статье речь зайдет о базовых блоках для построения реактивной архитектуры
Medium
Building a system of reactive components with Kotlin
This is the second part in a series of articles on Android architecture in Badoo. Check out the first one if you missed it:
#Animation
BottomNavigationView: Animating Icons
Руководство по анимированию иконок в BottomNavigationView на основе AnimatedStateListDrawable.
BottomNavigationView: Animating Icons
Руководство по анимированию иконок в BottomNavigationView на основе AnimatedStateListDrawable.
Styling Android
BottomNavigationView: Animating Icons
There is an occasional series on Styling Android which covers techniques for creating Animated Icons as AnimatedVectorDrawable and AnimatedStateListDrawable. These are quite easy to use when using th
#Architecture #MVI #Reactive
Introducing Orbit MVI for Kotlin and Android
Разработчики из компании Babylon Health показали свое собственное решение для архитектуры - OrbitMVI. В статье рассматриваются базовые принципы MVI и особенности решения.
Introducing Orbit MVI for Kotlin and Android
Разработчики из компании Babylon Health показали свое собственное решение для архитектуры - OrbitMVI. В статье рассматриваются базовые принципы MVI и особенности решения.
Medium
Introducing Orbit MVI for Kotlin and Android
We are delighted to introduce Orbit MVI, a library for the Model-View-Intent UI architecture pattern for Kotlin and Android.
#Podcast #Reaktive #Kotlin #Multiplatform
Подкаст "Reaktive на Kotlin Multiplatform"
Взял интервью у разработчиков библиотеки Reaktive: Аркадия Иванова и Юрий Влада. Ребята рассказали о реализации, с каким трудностями столкнулись при разработке на Kotlin Multiplatform, готовность к проду, производительность и пр.
Полезные ссылки:
👉 Reaktive Github
👉 Reaktive JMH Benchmark
👉 Доклад "Kotlin Multiplatform с точки зрения бизнеса"
Подкаст "Reaktive на Kotlin Multiplatform"
Взял интервью у разработчиков библиотеки Reaktive: Аркадия Иванова и Юрий Влада. Ребята рассказали о реализации, с каким трудностями столкнулись при разработке на Kotlin Multiplatform, готовность к проду, производительность и пр.
Полезные ссылки:
👉 Reaktive Github
👉 Reaktive JMH Benchmark
👉 Доклад "Kotlin Multiplatform с точки зрения бизнеса"
SoundCloud
Hear the world’s sounds
Explore the largest community of artists, bands, podcasters and creators of music & audio
#Coroutines #Flow
Binding Android UI with Kotlin Flow
Помните библиотеку RxBinding? Она позволяет получать события от Android виджетов в Rx стиле. Kotlin Flow -это реактивный подход, основанный на Coroutines. Так вот, энтузиасты совместили подходы RxBinding, заменив механизм на Flow, получили новую библиотеку - FlowBinding. В статье рассматриваются все подробности работы с библиотекой.
Binding Android UI with Kotlin Flow
Помните библиотеку RxBinding? Она позволяет получать события от Android виджетов в Rx стиле. Kotlin Flow -это реактивный подход, основанный на Coroutines. Так вот, энтузиасты совместили подходы RxBinding, заменив механизм на Flow, получили новую библиотеку - FlowBinding. В статье рассматриваются все подробности работы с библиотекой.
DEV Community 👩💻👨💻
Binding Android UI with Kotlin Flow
Modern Android codebases are becoming increasingly reactive. With concepts and patterns such as MVI,...
#Coroutines
Everything you need to know about Kotlin Coroutines
Слышали о
В статье вы найдете краткое руководство обо всех основных моментах, что позволит вам понять тему и попробовать их в действии.
Everything you need to know about Kotlin Coroutines
Слышали о
Kotlin Coroutine
? Трудно такое пропустить. Все кто использует Kotlin (а это большинство Android разработчиков). Google также активно агитирует за использование этого асинхронного подхода. Нет, это не из-за "Kotlin First" в Android разработке, а из-за того как Structured Concurrency
эффективно решает связь между асинхронными задачами и жизненным циклом компонентов.В статье вы найдете краткое руководство обо всех основных моментах, что позволит вам понять тему и попробовать их в действии.
Medium
Everything you need to know about kotlin coroutines
In this article, I will demystify all the kotlin coroutines terminologies and its internals. Article contains lots of runnable examples.
#ADB
Вышли SDK Platform Tools 29.0.5 в которой была улучшена 👉 производительность на Linux
👉 для команды
Вышли SDK Platform Tools 29.0.5 в которой была улучшена 👉 производительность на Linux
👉 для команды
adb install
был добавлен новый флаг --fastdeploy
, который позволяет инкрементально обновлять APK во время разработки.#RxJava
Operator fusion in RxJava 2
Разбор оптимизаций библиотеки RxJava 2 для обеспечения наибольшей производительности и устранения негативных эффектов от создание множества промежуточных объектов, называемые
Operator fusion in RxJava 2
Разбор оптимизаций библиотеки RxJava 2 для обеспечения наибольшей производительности и устранения негативных эффектов от создание множества промежуточных объектов, называемые
"operator fusion"
.Medium
Operator fusion in RxJava 2
Overview of optimizations in RxJava2
#Security #Biometric #Jetpack
One Biometric API Over all Android
Готовиться к стабильному релизу библиотека AndroidX Biometric (текущий статус RC2), которая портирует возможности
One Biometric API Over all Android
Готовиться к стабильному релизу библиотека AndroidX Biometric (текущий статус RC2), которая портирует возможности
android.hardware.biometrics
на Android 6.0+. android.hardware.biometrics
предоставляет стандартный UI для биометрической авторизации (отпечатком пальца или другой) и минимизирует затраты на интеграциюAndroid Developers Blog
One Biometric API Over all Android
Posted by Isai Damier, Android Developer Platform Engineering (@isaidamier) Kevin Chyn, Android Framework Curtis Belmonte, Android Frame...
#GooglePlay
Policies & Publishing on Google Play
Как правильно разрабатывать ваше приложение чтобы оно прошло одобрение в Google Play или не было забанено в будущем? В Google сделали небольшое видео с раскрытием основных политик:
👉 Используйте аудио, видео и картинки, которые не нарушают авторских прав
👉 Безопасность данных пользователя - важный аспект
👉 Используйте только необходимые разрешения, которые нужны вашему приложению
👉 Соответствие Family Policy, в особенности если ваше приложение позиционируется для детей или дети могут использовать его
👉 Правильное описание вашего приложения в Google Play
Соблюдение этих правил - шаг на пути к успешной публикации в Google Play
Policies & Publishing on Google Play
Как правильно разрабатывать ваше приложение чтобы оно прошло одобрение в Google Play или не было забанено в будущем? В Google сделали небольшое видео с раскрытием основных политик:
👉 Используйте аудио, видео и картинки, которые не нарушают авторских прав
👉 Безопасность данных пользователя - важный аспект
👉 Используйте только необходимые разрешения, которые нужны вашему приложению
👉 Соответствие Family Policy, в особенности если ваше приложение позиционируется для детей или дети могут использовать его
👉 Правильное описание вашего приложения в Google Play
Соблюдение этих правил - шаг на пути к успешной публикации в Google Play
YouTube
Policies & publishing on Google Play
To ensure long term success on Google Play, it is our collective responsibility to create a safe experience for consumers. We want users to trust the apps and games they download from Google Play, which is why user privacy is at the forefront of our policies.…
#Image #Animation
Animate image rotation like a PRO
Рассказ о том как красиво повернуть картинку (конечно же с анимацией), используя для этого изменение матрицы картинки.
Animate image rotation like a PRO
Рассказ о том как красиво повернуть картинку (конечно же с анимацией), используя для этого изменение матрицы картинки.
Medium
Animate image rotation like a PRO
So you wrote your very cool Android app, and inside you want to capture an image from Camera / Gallery.
#SDK #Video
Выпущено TikTok SDK
Стало доступно публичное SDK для популярного сервиса TikTok. С помощью него вы можете встроить видео из сервиса в своё приложение или загрузить его туда.
Выпущено TikTok SDK
Стало доступно публичное SDK для популярного сервиса TikTok. С помощью него вы можете встроить видео из сервиса в своё приложение или загрузить его туда.
#Performance
The battle for jank*-less UI on Android
Разбор базовых способов как найти проблемы почему ваше приложение пропускает кадры и не отображает UI с частотой 60 кадров в секунду:
👉 StrictMode
👉 GPU Overdraw
👉 HWUI rendering
The battle for jank*-less UI on Android
Разбор базовых способов как найти проблемы почему ваше приложение пропускает кадры и не отображает UI с частотой 60 кадров в секунду:
👉 StrictMode
👉 GPU Overdraw
👉 HWUI rendering
Medium
The battle for jank*-less UI on Android
Recently I was playing with one of the apps I’ve been working on and I’ve noticed something interesting — there was a noticeable…
#JSON #Performance
Beyond Gson — Evaluating JSON Parsers for Android & Kotlin
Какой JSON парсер самый быстрый? Задумывались ли вы об этом? Я думаю что значительная часть подписчиков канала используют GSON в качестве парсера, возможно даже и не зная этого.
Что не так с GSON? Он не поддерживает Kotlin из коробки (например nullability), который является основным языком для Android разработки.
В статье сравниваются различные парсеры и как можно мигрировать на них. Результаты сравнения по тестам производительности следующий:
1️⃣ Moshi 🏆
2️⃣ kotlinx.serialization (в процессе разработке, но уже стабильна)
3️⃣ GSON
4️⃣ Jackson
Первые два парсера смогли оторваться за счет того что не используют рефлексию
Beyond Gson — Evaluating JSON Parsers for Android & Kotlin
Какой JSON парсер самый быстрый? Задумывались ли вы об этом? Я думаю что значительная часть подписчиков канала используют GSON в качестве парсера, возможно даже и не зная этого.
Что не так с GSON? Он не поддерживает Kotlin из коробки (например nullability), который является основным языком для Android разработки.
В статье сравниваются различные парсеры и как можно мигрировать на них. Результаты сравнения по тестам производительности следующий:
1️⃣ Moshi 🏆
2️⃣ kotlinx.serialization (в процессе разработке, но уже стабильна)
3️⃣ GSON
4️⃣ Jackson
Первые два парсера смогли оторваться за счет того что не используют рефлексию
Medium
Beyond Gson — Evaluating JSON Parsers for Android & Kotlin
Background
#JSON #Multiplatform
Хотите узнать подробнее о kotlinx.serialization - рекомендую посмотреть доклад разработчика этой библиотеки Леонида Старцева из JetBrains "Дизайн kotlinx.serialization"
Хотите узнать подробнее о kotlinx.serialization - рекомендую посмотреть доклад разработчика этой библиотеки Леонида Старцева из JetBrains "Дизайн kotlinx.serialization"
YouTube
"Дизайн kotlinx.serialization" - Леонид Старцев@JetBrains
Леонид рассказал о библиотеке kotlinx.serialization: зачем она была создана, какие архитектурные решения были приняты в процессе её написания. О том, как она работает изнутри и как программисты могут ей пользоваться и расширять её.
Github - https://gith…
Github - https://gith…
Android Broadcast
Какой парсер JSON используете вы?
Явным лидером оказалось творение Google - GSON. Я считаю что он не соответсвует духу современной разработки под Android - это Kotlin и отказ от рефлексии в пользу кодогенерации (kapt или с помощью Gradle плагина).
Лично я выбираю Moshi - оптимизируемый код, модели, которые можно обфусцировать и поддержка Kotlin
Также жду стабильного релиза kotlinx.serialization и оценить всю его финальную мощь.
Делитесь своим мнение в - @android_broadcast_discussions
Лично я выбираю Moshi - оптимизируемый код, модели, которые можно обфусцировать и поддержка Kotlin
Также жду стабильного релиза kotlinx.serialization и оценить всю его финальную мощь.
Делитесь своим мнение в - @android_broadcast_discussions
GitHub
GitHub - Kotlin/kotlinx.serialization: Kotlin multiplatform / multi-format serialization
Kotlin multiplatform / multi-format serialization - GitHub - Kotlin/kotlinx.serialization: Kotlin multiplatform / multi-format serialization
#Gradle
Вышел Gradle 6.0
Вышла новая мажорная версия основной системы сборки для Android проектов Gradle. Давайте смотреть что же нового!
👉 Множество улучшений в управление зависимостями
👉
👉 Улучшение инкрементальной компиляции Java
👉 Новое API для разработчиков Gradle плагинов: ConfigurableFileTree, FileCollection, FileSystemOperations, ExecOperations
👉 Улучшения Worker API
👉 Улучшения в безопасности: запрет работы по HTTP для репозиториев
👉 Отображение проблем с Task во время их выполнения. Теперь легче понять какие проблемы с объявлением
👉 Часть экспериментальных фичей стали стабильными: поддержка C++ and Swift support
👉 Удаление Deprecated кода
ВАЖНО: Будьте внимательны при обновление все те кто использует Android Gradle Plugin < 4.0 т.к.проект может перестать собираться или может отвалиться некоторые плагины
Вышел Gradle 6.0
Вышла новая мажорная версия основной системы сборки для Android проектов Gradle. Давайте смотреть что же нового!
👉 Множество улучшений в управление зависимостями
👉
maven-publish
плагин теперь публикует Gradle Module Metadata👉 Улучшение инкрементальной компиляции Java
👉 Новое API для разработчиков Gradle плагинов: ConfigurableFileTree, FileCollection, FileSystemOperations, ExecOperations
👉 Улучшения Worker API
👉 Улучшения в безопасности: запрет работы по HTTP для репозиториев
👉 Отображение проблем с Task во время их выполнения. Теперь легче понять какие проблемы с объявлением
Task
что не позволяет ему кэшировать результат👉 Часть экспериментальных фичей стали стабильными: поддержка C++ and Swift support
👉 Удаление Deprecated кода
ВАЖНО: Будьте внимательны при обновление все те кто использует Android Gradle Plugin < 4.0 т.к.проект может перестать собираться или может отвалиться некоторые плагины