Пошаговая инструкция по сегментации изображения с камеры в реальном времени с помощью CameraX и MLKit. На случай, если вы решите создать свой Instagram с масками и фильтрами.
https://proandroiddev.com/realtime-selfie-segmentation-in-android-with-mlkit-38637c8502ba
https://proandroiddev.com/realtime-selfie-segmentation-in-android-with-mlkit-38637c8502ba
Medium
Realtime Selfie Segmentation In Android With MLKit
Perform the fastest-ever image segmentation in Android
Решение классической задачи по реализации Drag & Drop в списках на Jetpack Compose.
https://proandroiddev.com/basic-drag-n-drop-in-jetpack-compose-a6919ba58ba8
https://proandroiddev.com/basic-drag-n-drop-in-jetpack-compose-a6919ba58ba8
Medium
Basic Drag-n-Drop in Jetpack Compose
Walkthrough of over basic implementation of Drag-n-Drop for LazyList in Jetpack Compose
В Gradle 7.0 появилась экспериментальная функция, включающую автоподстановку и проверку типов при обращении к модулям проекта. Теперь вместо
https://proandroiddev.com/using-type-safe-project-dependencies-on-gradle-493ab7337aa
project(":libraries:ui”)
можно использовать projects.libraries.ui
.https://proandroiddev.com/using-type-safe-project-dependencies-on-gradle-493ab7337aa
Medium
Using type-safe project dependencies on Gradle
Gradle 7.0 introduced a new feature called type-safe project accessors, which make our life easier to handle project dependencies.
Подробная инструкция по использованию Kotlin Flow во ViewModel: внутренние особенности, правильная подписка на данные в UI и сравнение с LiveData, есть кейсы, в которых старый подход работает лучше.
https://bladecoder.medium.com/kotlins-flow-in-viewmodels-it-s-complicated-556b472e281a
https://bladecoder.medium.com/kotlins-flow-in-viewmodels-it-s-complicated-556b472e281a
Medium
Kotlin’s Flow in ViewModels: it’s complicated
LiveData is still your friend
При использовании Jetpack Compose пользовательский интерфейс строится по иным принципам, поэтому и привычные способы UI тестирования работать не будут. Разбираемся как писать UI тесты для Compose.
https://dmytroshuba.com/blog/jetpack-compose-ui-testing/
https://dmytroshuba.com/blog/jetpack-compose-ui-testing/
Dmytro Shuba
How to test Jetpack Compose UI
Android development has close ties with old good XML for UI development, but is it good enough to beat recently released Jetpack Compose?
Продолжая тему Drag & Drop, вспоминаем как реализовать подобную функциональность на классических View.
https://www.raywenderlich.com/24508555-android-drag-and-drop-tutorial-moving-views-and-data
https://www.raywenderlich.com/24508555-android-drag-and-drop-tutorial-moving-views-and-data
kodeco.com
Android Drag and Drop Tutorial: Moving Views and Data
Learn how to use Android’s drag-and-drop framework to enable an advanced gesture-based user experience.
Шпаргалка по KDoc, которая поможет покрыть документацией ваш код на Kotlin.
https://medium.com/@drflakelorenzgerman/documentation-with-kdoc-for-kotlin-android-a93c99dfe74
https://medium.com/@drflakelorenzgerman/documentation-with-kdoc-for-kotlin-android-a93c99dfe74
Medium
Documentation with KDoc for Kotlin/Android
Think about you’re creating a library and you want to publish it on Git, or even you’re writing your casual code on some project, you need…
Писали когда-нибудь библиотеки на Kotlin, публичные или для внутреннего использования? Помогите команде Kotlin разобраться с тем, как можно улучшить опыт авторов библиотек, пройдя небольшой опрос.
https://surveys.jetbrains.com/s3/an-kotlin-libraries-authors-survey
https://surveys.jetbrains.com/s3/an-kotlin-libraries-authors-survey
Jetbrains
Kotlin libraries authors research
Kotlin libraries authors research.
Погружаемся в детали работы процесса рекомпозиции в Jetpack Compose на реальном примере.
https://proandroiddev.com/understanding-re-composition-in-jetpack-compose-with-a-case-study-9e7d96d98095
https://proandroiddev.com/understanding-re-composition-in-jetpack-compose-with-a-case-study-9e7d96d98095
Medium
Understanding re-composition in Jetpack Compose with a case study
Tells the story how piece of code was examined to understand re-composition better.
После релиза, Hilt стал все чаще и чаще встречаться в проектах. Смотрим как мы можем тестировать код с его помощью.
https://medium.com/androiddevelopers/hilt-testing-best-practices-in-the-mad-skills-series-8186a57eee2c
https://medium.com/androiddevelopers/hilt-testing-best-practices-in-the-mad-skills-series-8186a57eee2c
Medium
Hilt Testing Best Practices in the MAD Skills series
Second episode of the Hilt MAD Skills series
Многие приложения используют OAuth протокол с двумя токенами, которые необходимо переодически обновлять. Решаем эту задачу с помощью OkHttp.
https://medium.com/@sumon.v0.0/okhttp-how-to-refresh-access-token-efficiently-6dece4d271c0
https://medium.com/@sumon.v0.0/okhttp-how-to-refresh-access-token-efficiently-6dece4d271c0
Medium
OkHttp: How to Refresh Access Token Efficiently
In token-based authentication, including OAuth, there are two tokens: an access token and a refresh token. Whenever you want to access a…
Charles позволяет в реальном времени смотреть и модифицировать сетевые запросы, которые использует ваше приложение, что очень удобно для дебага или тестирования. Полная инструкция по использованию инструмента в статье.
https://www.chaddha.me/streamlining-development-with-charles/
https://www.chaddha.me/streamlining-development-with-charles/
Большое исследование производительности Jetpack Compose по части скорости рендеринга контента.
https://engineering.premise.com/measuring-render-performance-with-jetpack-compose-c0bf5814933
https://engineering.premise.com/measuring-render-performance-with-jetpack-compose-c0bf5814933
Medium
Measuring Render Performance with Jetpack Compose
Measuring the render performance impact of Jetpack Compose across several common integration scenarios.
ADB мощный инструмент, который позволяет управлять подключенными устройствами и эмуляторами. Подборка полезных ADB команд: подключение к устройству, управление файлами, ввод данных, тестирование диплинков, запись видео и скриншоты.
https://proandroiddev.com/utilizing-adb-for-daily-tasks-b52a27715ee5
https://proandroiddev.com/utilizing-adb-for-daily-tasks-b52a27715ee5
Medium
Utilizing ADB for daily tasks
If you’re developing Android apps, you might often wonder how does our PC communicate with the Android devices when we debug. Well, the…
Пробовали писать скрипты на Kotlin, или, может, использовали Kotlin REPL? Поделитесь своим опытом, проблемами и юзкейсами – это поможет составить планы по их дальнейшей стабилизации!
https://surveys.jetbrains.com/s3/Kotlin-Scripting-Survey-gr
https://surveys.jetbrains.com/s3/Kotlin-Scripting-Survey-gr
Jetbrains
Kotlin Scripting Survey
Kotlin Scripting Survey.
Многие приложения при вставке ссылки умеют подтягивать красивое превью с изображением. Инструкция как сделать такое же в статье.
https://proandroiddev.com/how-to-create-a-preview-for-a-link-in-android-6906d0aa9e12
https://proandroiddev.com/how-to-create-a-preview-for-a-link-in-android-6906d0aa9e12
Medium
How to create a preview for a link in Android
With the development of messaging applications, starting from WhatsApp for Chat Groups, to Slack for workspaces, link sharing is a crucial…
LaunchedEffect
позволяет нам запускать корутины в Jetpack Compose, однако у этого подхода есть ограничения, такие как невозможность использования вне composable и управления жизненным циклом корутины. Исправить это призван rememberCoroutineScope
.https://proandroiddev.com/jetpack-compose-side-effects-ii-remembercoroutinescope-76104d7ff09
Medium
Jetpack Compose Side-Effects II — rememberCoroutineScope
Part I. Jetpack Compose Side-Effects — LaunchedEffect
История противостояния мобильных платформ и разработчиков приложений в задаче присваивания уникального ID пользователю, а также какие варианты есть у разработчиков на данный момент.
https://ehsanet.medium.com/android-unique-device-id-history-and-updates-7667b38e4ee2
https://ehsanet.medium.com/android-unique-device-id-history-and-updates-7667b38e4ee2
Medium
Android Unique Device ID: History and Updates
Getting a fixed ID is not straightforward anymore since Google wants to protect its users from unwanted tracking and privacy issues. The…
Новая серия MAD Skills, посвященная Hilt. В этой части разбираются внутренности библиотеки: что означают аннотации, какой код генерируется и как компоненты связываются между собой.
https://medium.com/androiddevelopers/mad-skills-series-hilt-under-the-hood-9d89ee227059
https://medium.com/androiddevelopers/mad-skills-series-hilt-under-the-hood-9d89ee227059
Medium
MAD Skills series: Hilt under the hood
Third episode of the Hilt MAD Skills series
21 сентября в 18 часов пройдет митап от Google и Android Broadcast. В программе – разбор обновлений в Android 12 и Jetpack Compose. Подключайтесь!
https://telp.cc/rCz
https://telp.cc/rCz
YouTube
Android 12 Митап от Google Россия и Android Broadcast - YouTube