#GooglePlay #DynamicFeature #DynamicDelivery
Dynamic Delivery в многомодульных проектах (часть 2)
Продолжение статей о возможности загрузки функционала вашего приложения динамически на основе Dynamic Delivery.
В новой части статьи рассказывает об:
👉 организации архитектуры в приложения с учетом Dynamic Delivery
👉 как настроить проект в Gradle
👉 как тестировать приложения с таким функционалом
Первая часть статьи здесь
Dynamic Delivery в многомодульных проектах (часть 2)
Продолжение статей о возможности загрузки функционала вашего приложения динамически на основе Dynamic Delivery.
В новой части статьи рассказывает об:
👉 организации архитектуры в приложения с учетом Dynamic Delivery
👉 как настроить проект в Gradle
👉 как тестировать приложения с таким функционалом
Первая часть статьи здесь
Хабр
Dynamic Delivery в многомодульных проектах (часть 2)
Привет! Меня зовут Юрий Влад, я Android-разработчик в компании Badoo и занимаюсь внедрением Dynamic Features в наши проекты. Я уже рассказывал, что такое Dynam...
#UI #Animation
TransformationLayout
Хотите быстро превратить кнопку в карточку с анимацией? Может даже красиво открывать элемент списка в целый экран?
Все это вы сможете сделать с помощью библиотеки TransformationLayout, которая упростит работу с Transition и Activity Transition.
TransformationLayout
Хотите быстро превратить кнопку в карточку с анимацией? Может даже красиво открывать элемент списка в целый экран?
Все это вы сможете сделать с помощью библиотеки TransformationLayout, которая упростит работу с Transition и Activity Transition.
GitHub
GitHub - skydoves/TransformationLayout: 🌠 Transform between two Views, Activities, and Fragments, or a View to a Fragment with…
🌠 Transform between two Views, Activities, and Fragments, or a View to a Fragment with container transform animations for Android. - skydoves/TransformationLayout
#UI
CompoundTextView
Библиотека упрощает работу с compound drawable в TextView, позволяя задавать множество параметров:
👉 положение
👉 размер
👉 отступ
👉 tint
Также вы можете задать ClickListener и проделать другие трюки
CompoundTextView
Библиотека упрощает работу с compound drawable в TextView, позволяя задавать множество параметров:
👉 положение
👉 размер
👉 отступ
👉 tint
Также вы можете задать ClickListener и проделать другие трюки
GitHub
GitHub - imbeerus/compound-text-view: Change gravity of Image Drawable in TextView 🌌
Change gravity of Image Drawable in TextView 🌌. Contribute to imbeerus/compound-text-view development by creating an account on GitHub.
Как вы работаете с уведомлениями в ваших приложениях?
Final Results
10%
Нет уведомлений
15%
Управляются через Firebase, в приложении нету кода по обработки
54%
Показываем уведомления из приложения
6%
Другой вариант
16%
Смотрю результаты
#Gradle #AndroidStudio
deep-clean
Kotlin скрипт, который удаляет все кэши сборки из Gradle/Android проектов. Полезно когда у вас возникают проблема в Gradle или IDE.
deep-clean
Kotlin скрипт, который удаляет все кэши сборки из Gradle/Android проектов. Полезно когда у вас возникают проблема в Gradle или IDE.
#AndroidBroadcast #Patron
Хочу выразить благодарность новым патроном проекта:
👉 Дмитрий Воронин
👉 Алексей Петров
👉 Stanislav Protskiy
Хочу выразить благодарность новым патроном проекта:
👉 Дмитрий Воронин
👉 Алексей Петров
👉 Stanislav Protskiy
#DependencyInjection #Video #AndroidBroadcast
Почему Koin?
Android разработка строится вокруг определенных рекомендаций-правил и одним из таких является использование Dagger 2. Для себя я решил, что так нельзя и для Kotlin мы заслуживаем лучшего решения.
В видео я осветил почему перешел на Koin, свои впечатления и чего я боюсь в будущем от использования этой библиотеки для DI.
Хотите больше видео и качественнее? Поддержите проект на Boosty
Почему Koin?
Android разработка строится вокруг определенных рекомендаций-правил и одним из таких является использование Dagger 2. Для себя я решил, что так нельзя и для Kotlin мы заслуживаем лучшего решения.
В видео я осветил почему перешел на Koin, свои впечатления и чего я боюсь в будущем от использования этой библиотеки для DI.
Хотите больше видео и качественнее? Поддержите проект на Boosty
#GC #Android
Collecting the Garbage: A brief history of GC over Android versions
Garbage Collector (сборщик мусора) в Android отличается от используемого в стандартной JVM. В статье разбирается разные версии GC в Android и принципы его работы.
Collecting the Garbage: A brief history of GC over Android versions
Garbage Collector (сборщик мусора) в Android отличается от используемого в стандартной JVM. В статье разбирается разные версии GC в Android и принципы его работы.
Medium
Collecting the Garbage: A brief history of GC over Android versions
When I come to the Android world, about 2 years ago, I didn’t know anything about how the things were done. I came from a Java world…
#Conference #Иннополис
Конференция "Мир. Труд. Мобайл"
30 - 31 мая в Иннополисе пройдет конференция для мобильных разработчиков — Мир. Труд. Мобайл📲
В самом молодом городе соберутся мобильные разработчик и UX/UI дизайнеры, чтобы обсудить архитектуру, технологии, фреймворки, инструменты и дизайн в современных приложениях под Android/iOS
Кроме 2 дней и множества треков с докладами, вас ждет вечеринка с шашлыками, песни у костра 🔥под гитару, наблюдение за звёздным небом и прочая «дачная» романтика. А для заядлых туристов есть вариант размещения с палаткой 😏
Купить билет со скидкой в 10% по промокоду Android_broadcast
Также вы можете принять участие в розыгрыше билета на конференцию от Android Broadcast. Для этого вам надо заполнить анкету.
Конференция "Мир. Труд. Мобайл"
30 - 31 мая в Иннополисе пройдет конференция для мобильных разработчиков — Мир. Труд. Мобайл📲
В самом молодом городе соберутся мобильные разработчик и UX/UI дизайнеры, чтобы обсудить архитектуру, технологии, фреймворки, инструменты и дизайн в современных приложениях под Android/iOS
Кроме 2 дней и множества треков с докладами, вас ждет вечеринка с шашлыками, песни у костра 🔥под гитару, наблюдение за звёздным небом и прочая «дачная» романтика. А для заядлых туристов есть вариант размещения с палаткой 😏
Купить билет со скидкой в 10% по промокоду Android_broadcast
Также вы можете принять участие в розыгрыше билета на конференцию от Android Broadcast. Для этого вам надо заполнить анкету.
#Coroutines #Flow
flow-preferences
Версия rx-preferences на основе Kotlin Flow. Добавляет возможность работать с Android SharedPreferences на основе Kotlin Coroutines
flow-preferences
Версия rx-preferences на основе Kotlin Flow. Добавляет возможность работать с Android SharedPreferences на основе Kotlin Coroutines
GitHub
GitHub - tfcporciuncula/flow-preferences: Kotlin Flow version of rx-preferences -- Coroutines support for Android SharedPreferences
Kotlin Flow version of rx-preferences -- Coroutines support for Android SharedPreferences - tfcporciuncula/flow-preferences
В какие магазины приложений выкладываете вы свои приложения?
(можно выбрать несколько вариантов)
(можно выбрать несколько вариантов)
Final Results
74%
Google Play
9%
Huawei App Gallery
3%
Amazon Appstore
1%
Aptoide
3%
Samsung Galaxy Apps
2%
F-Droid
2%
Другие магазины
10%
Распостраняю вне магазинов
11%
Нет опубликованных приложений
17%
Смотрю ответы
#AndroidStudio #Bug #AndroidLint
Android Lint стал тормозить в AGP 4.0-beta01
Столкнулись с багами в Android Gradle Plugin 4.0 beta 1 - Android Lint стали работать заметно медленнее. Скорость упала в разы. Особенно если у вас стоит флаг
Будьте осторожнее с миграцией, если активно используете Android Lint.
Android Lint стал тормозить в AGP 4.0-beta01
Столкнулись с багами в Android Gradle Plugin 4.0 beta 1 - Android Lint стали работать заметно медленнее. Скорость упала в разы. Особенно если у вас стоит флаг
LintOptions.isCheckDependencies = true
.Будьте осторожнее с миграцией, если активно используете Android Lint.
#Arhitecture #Kotlin #Multiplatform
MVIKotlin
Знакомы с библиотекой MVIDroid? Так вот ее больше нет. Она не умерла, а переродилась в MVIKotlin:
👉 Стала мультиплатформенной на основе Kotlin MPP
👉 Поддержка Android, JVM, JavaScript, iOS (Arm64 и X64), Linux X64
👉 Библиотека независимо от любого подхода и может работать на основе Reaktive или Kotlin Coroutines
👉 Поддержка многопоточности на Kotlin/Native
👉 Готовый подключаемый UI для Android и iOS
Одной из крутых фичей библиотеки является "Time Travel" - все изменения состояния сохраняются и можно переключаться между ними внутри приложения, с помощью библиотеки расширения. Демо "Time Travel"
MVIKotlin
Знакомы с библиотекой MVIDroid? Так вот ее больше нет. Она не умерла, а переродилась в MVIKotlin:
👉 Стала мультиплатформенной на основе Kotlin MPP
👉 Поддержка Android, JVM, JavaScript, iOS (Arm64 и X64), Linux X64
👉 Библиотека независимо от любого подхода и может работать на основе Reaktive или Kotlin Coroutines
👉 Поддержка многопоточности на Kotlin/Native
👉 Готовый подключаемый UI для Android и iOS
Одной из крутых фичей библиотеки является "Time Travel" - все изменения состояния сохраняются и можно переключаться между ними внутри приложения, с помощью библиотеки расширения. Демо "Time Travel"
GitHub
GitHub - arkivanov/MVIKotlin: Extendable MVI framework for Kotlin Multiplatform with powerful debugging tools (logging and time…
Extendable MVI framework for Kotlin Multiplatform with powerful debugging tools (logging and time travel) - arkivanov/MVIKotlin
#AndroidAcademy #Minsk #Testing
Android Academy Minsk Advanced Topic #4 - Testing
Все об этом говорят, но мало кто это делает в проектах - пишут тесты. Почему? Нет времени, спешка, считают что это не приносит много пользы.
На следующей лекции в Android Academy Minsk вы сможете узнать зачем писать тесты, как это делать правильно и какую пользу это вам принесёт.
Android Academy Minsk Advanced Topic #4 - Testing
Все об этом говорят, но мало кто это делает в проектах - пишут тесты. Почему? Нет времени, спешка, считают что это не приносит много пользы.
На следующей лекции в Android Academy Minsk вы сможете узнать зачем писать тесты, как это делать правильно и какую пользу это вам принесёт.
#Java
Что нового будет в Java 14
Пока большинство Android разработчиков забыли про Java в ней идет большая жизнь. Уже на подходе релиз 14ой версии. В ней нас ожидает:
👉 Pattern matching
👉 Record
👉 switch expression
👉 Text blocks
и много всего другого о чем можно почитать в статье
Что нового будет в Java 14
Пока большинство Android разработчиков забыли про Java в ней идет большая жизнь. Уже на подходе релиз 14ой версии. В ней нас ожидает:
👉 Pattern matching
👉 Record
👉 switch expression
👉 Text blocks
и много всего другого о чем можно почитать в статье
Хабр
Alconost, Alexandria - Локализуем на 70 языков, делаем видеоролики для IT / Статьи
382 статьи от авторов компании Alconost
#R8 #D8
When using enums and R8…
Chet Haase делиться с нами какую пользу может оказать R8 и убрать лишний JVM байткод, который генерируется Kotlin, когда вы используете его для компиляции кода на примере enum.
When using enums and R8…
Chet Haase делиться с нами какую пользу может оказать R8 и убрать лишний JVM байткод, который генерируется Kotlin, когда вы используете его для компиляции кода на примере enum.
Medium
When using enums and R8…
Kotlin Vocabulary — switching on enums, and R8 optimization
#RecyclerView
Android RecyclerView StickyHeader without external library
Инструкция как можно сделать Sticky Header в RecyclerView без использования сторонних библиотек на основе ItemDecoration
Android RecyclerView StickyHeader without external library
Инструкция как можно сделать Sticky Header в RecyclerView без использования сторонних библиотек на основе ItemDecoration
DEV Community
Android RecyclerView StickyHeader without external library
There are several occasions when we need to implement sticky header for some list of data displayed i...
#Meetup #Lviv #Kotlin
KLUG meetUp#13
28 марта во Львове пройдет митап Kotlin Lviv User Group на котором вас ждет 4 доклада! В том числе я расскажу о том, почему стоит выбрать Kotlin Coroutines как основной подход для асинхронных операций на Android.
Следите за обновлениями и до встречи!
KLUG meetUp#13
28 марта во Львове пройдет митап Kotlin Lviv User Group на котором вас ждет 4 доклада! В том числе я расскажу о том, почему стоит выбрать Kotlin Coroutines как основной подход для асинхронных операций на Android.
Следите за обновлениями и до встречи!
#Coroutines
Cancellation and Exceptions in Coroutines: "Coroutines: First things first" (Часть 1/3)
⏱️5 минут
Очень важной частью Coroutine является Structured Concurrency, которая позволяет избегать выполнения ненужной работы.
В первой части статьи раскрываются основные концепты:
👉 CoroutineScope
👉 Job
👉 CoroutineContext:
👉 Жизненный цикл Job
👉 Родительский
Cancellation and Exceptions in Coroutines: "Coroutines: First things first" (Часть 1/3)
⏱️5 минут
Очень важной частью Coroutine является Structured Concurrency, которая позволяет избегать выполнения ненужной работы.
В первой части статьи раскрываются основные концепты:
👉 CoroutineScope
👉 Job
👉 CoroutineContext:
Job
, CoroutineDispatcher
, CoroutineName
, CoroutineExceptionHandler
👉 Жизненный цикл Job
👉 Родительский
CoroutineContext
Medium
Coroutines: first things first
Cancellation and Exceptions in Coroutines (Part 1)