Продолжение сериала о том, как операторы merge и zip в RxJava могут стать причиной UndeliverableException, теперь с решением проблемы.
https://medium.com/perry-street-software-engineering/merging-rxjava-observables-considered-harmful-part-iii-f1e804f20d0
https://medium.com/perry-street-software-engineering/merging-rxjava-observables-considered-harmful-part-iii-f1e804f20d0
Medium
Merging RxJava Observables considered harmful — Part III
Implementing and verifying safeMergeArray
В некоторых условиях пользователь может почти одновременно дважды нажать на элемент и соответсвенно дважды запустить например переход на другой экран. Как вы обрабатываете такой кейс в ваших приложениях?
https://proandroiddev.com/duplicate-android-navigation-bug-or-feature-5df370440c83
https://proandroiddev.com/duplicate-android-navigation-bug-or-feature-5df370440c83
Medium
Duplicate Android Navigation — Bug or Feature?
I recently found a bug that would cause a crash in all the apps I ever made. If you click to navigate twice from the same destination…
Серия статей, посвященная тестированию Android приложений. В этой части речь идет о сокращении количества и оптимизации тестов.
https://medium.com/azimolabs/removing-and-simplifying-tests-is-part-of-development-too-9a3ad4fdfc3c
https://medium.com/azimolabs/removing-and-simplifying-tests-is-part-of-development-too-9a3ad4fdfc3c
Medium
Removing and simplifying tests is part of development too
The evolution of apps QA at Azimo
Чеклист по сокращению веса вашего приложения: обфускация кода, сжатие ресурсов, оптимизация изображений.
https://medium.com/@0x4ym4n/the-art-of-download-size-optimization-for-android-applications-in-practice-6fb5314a7f40
https://medium.com/@0x4ym4n/the-art-of-download-size-optimization-for-android-applications-in-practice-6fb5314a7f40
Medium
The Art of download size optimization for Android applications in practice
Hey, guys! I hope that everyone is doing well.
👍1
Google представила Tiles — новое API для отображения информации на часах с Wear OS, которая будет в виде плиток отображаться по свайпу на домашнем экране.
https://android-developers.googleblog.com/2021/08/sharing-tiles-with-your-smartwatch-users.html
https://android-developers.googleblog.com/2021/08/sharing-tiles-with-your-smartwatch-users.html
Android Developers Blog
Sharing Tiles with your smartwatch users:
Posted by Jeremy Walker, Engineer Tiles provide quick access to information and actions with a simple swipe from the watch face home...
Вакансии для Android-разработчиков в новый сервис Яндекса
Мы всегда рады обратной связи и особенно — новым идеям от подписчиков. Среди них оказались ребята из Финтеха (будущего Яндекс Банка), которые сейчас как раз ищут разработчиков на Kotlin.
Строить банк с нуля, придумывать архитектуру, запускать в продакшен первые сервисы — и всё это без легаси и чужого кода (и такое бывает!).
Финтеховцы настроены серьезно: ищут опытных бойцов и джунов, готовых прогрессировать, обещают быстрый найм за неделю и контакт эйчара сразу после маленькой задачки на промке. Проверяйте — всё ли действительно так!
Подробности здесь.
Мы всегда рады обратной связи и особенно — новым идеям от подписчиков. Среди них оказались ребята из Финтеха (будущего Яндекс Банка), которые сейчас как раз ищут разработчиков на Kotlin.
Строить банк с нуля, придумывать архитектуру, запускать в продакшен первые сервисы — и всё это без легаси и чужого кода (и такое бывает!).
Финтеховцы настроены серьезно: ищут опытных бойцов и джунов, готовых прогрессировать, обещают быстрый найм за неделю и контакт эйчара сразу после маленькой задачки на промке. Проверяйте — всё ли действительно так!
Подробности здесь.
Что может сделать разработку UI еще лучше после появления Jetpack Compose? Правильно – дизайнеры, которые умеют работать вместе с разработчиками, придерживаются гугловых гайдлайнов и в целом работают с вами плечом к плечу. Мы в Подлодке хотим помочь этому случиться и организуем Design Crew #1.
Темы недель:
- Редизайн (как спланировать, провести и оценить его пользу)
- Взаимодействие с разработчиками (процессы, инструменты, самостоятельная верстка)
Так вот, план-капкан – пошарьте ссылку на конференцию своим дизайнерам, дождитесь, пока они туда сходят, и внедряйте вместе новые практики! А так как конференцию проводим впервые, держите промик:
podlodka.io/designcrew
Темы недель:
- Редизайн (как спланировать, провести и оценить его пользу)
- Взаимодействие с разработчиками (процессы, инструменты, самостоятельная верстка)
Так вот, план-капкан – пошарьте ссылку на конференцию своим дизайнерам, дождитесь, пока они туда сходят, и внедряйте вместе новые практики! А так как конференцию проводим впервые, держите промик:
gr_design
.podlodka.io/designcrew
podlodka.io
Онлайн-конференция Podlodka Design Crew, сезон #3
Недельное мероприятие от команды Podlodka: ежедневные интерактивные сессии в Zoom по актуальным проблемам frontend-разработки, нон-стоп общение с экспертами и звёздами индустрии, закрытое профессиональное сообщество в Telegram.
🟢 Android in da Delivery Club 🟢
Delivery Club ищет новых коллег в Android-команды разных направлений.
Новым сотрудникам предстоит:
- участвовать в полном цикле продуктовой разработки: от проектирования контрактов клиент-серверного взаимодействия и до покрытия тестами и внедрения нового функционала;
- Развивать платформу, оптимизировать работу приложения и повышать перформанс;
- Развивать инфрастуктуру, улучшать CI/CD, ускорять и распараллеливать сборки;
- Развивать бренд и комьюнити, проводить внутренние встречи, выступать не внешних конференциях, вести блог на Хабре и т.д.
Подробности об условиях и ожиданиях от кандидата можно почитать тут 💻
По всем вопросам и откликам можно писать напрямую руководителю мобильной разработки Саше Аносову
Delivery Club ищет новых коллег в Android-команды разных направлений.
Новым сотрудникам предстоит:
- участвовать в полном цикле продуктовой разработки: от проектирования контрактов клиент-серверного взаимодействия и до покрытия тестами и внедрения нового функционала;
- Развивать платформу, оптимизировать работу приложения и повышать перформанс;
- Развивать инфрастуктуру, улучшать CI/CD, ускорять и распараллеливать сборки;
- Развивать бренд и комьюнити, проводить внутренние встречи, выступать не внешних конференциях, вести блог на Хабре и т.д.
Подробности об условиях и ожиданиях от кандидата можно почитать тут 💻
По всем вопросам и откликам можно писать напрямую руководителю мобильной разработки Саше Аносову
Некоторое время назад вышел Kotlin 1.5.30. Казалось бы минорный релиз, который однако приносит несколько важных нововведений для Kotlin Multiplatform: превью новой модели памяти, анализ кода во время компиляции и новые зависимости между модулями и кодом.
https://medium.com/@kpgalligan/kotlin-1-5-30-and-kmm-kmp-2ba19af65fe7
https://medium.com/@kpgalligan/kotlin-1-5-30-and-kmm-kmp-2ba19af65fe7
Medium
Kotlin 1.5.30 and KMM/KMP
Kotlin 1.5.30 officially launched just now. There has been a steady stream of Kotlin releases over the last year or so, each with new…
Серия статей про обновленные виждеты в Android 12. В эту часть вошли более продвинутые техники, которые должны помочь улучшить пользовательский опыт.
https://medium.com/androiddevelopers/do-more-with-your-widget-in-android-12-e33f12710532
https://medium.com/androiddevelopers/do-more-with-your-widget-in-android-12-e33f12710532
Medium
Do more with your widget in Android 12!
Do more with your Widget in Android 12!
Пошаговая инструкция по сегментации изображения с камеры в реальном времени с помощью 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/
Продолжая тему 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