Issue #671

April 20th, 2025
Articles & Tutorials
Sponsored
Join mobile leaders from Skyscanner and SoFi on May 8 to find out just how much your outdated mobile release processes are actually costing you—and learn the ROI of updating how you work and ship. Register for the live discussion.
Joe Birch explores the DockedSearchBar composable in Jetpack Compose Material3, highlighting its docked layout that integrates seamlessly within app content and supports customizable input fields and expandable search suggestions.
Ken Yee of Netflix outlines their scalable Android testing strategy, emphasizing team-owned tests, layered test types, and broad physical device coverage to ensure quality and reduce flakiness.
Sponsored
See how AI models stack up at generating code fixes for Android and iOS crashes. Instabug benchmarks the leading models from OpenAI, Google, Anthropic, and Meta to reveal surprising platform-specific strengths and which models deliver the most accurate solutions for your debugging arsenal.
Anitaa Murthy provides a beginner-friendly guide to integrating Google Maps into Jetpack Compose, covering setup, map configuration, and adding markers with customizable options.
Yan Zhulanow details the development of IntelliJ IDEA’s K2 mode, highlighting its concurrency-friendly architecture, elimination of global locks, and the introduction of the Kotlin Analysis API to enhance performance, scalability, and maintainability of Kotlin support in the IDE.
Narayan Panthi discusses how growing Android codebases can become unmanageable over time and advocates for modularization, scalable architecture, and adopting modern technologies to maintain performance and developer productivity.
Sahil Thakar clarifies the execution order of key side-effect functions in Jetpack Compose, helping developers better manage side effects and lifecycle events.
Amanda Hinchman demonstrates configuring multiple SQLite databases in Android using SQLDelight 2, integrating Hilt and KSP to manage distinct database instances within a modular architecture.
Anatolii Frolov explains the key difference between job.cancel() and scope.cancel() in Kotlin coroutines, focusing on their impact on coroutine lifecycle management in Android.
Suhyeon Kim explains Kotlin generics through a fantasy narrative, illustrating concepts like variance, type erasure, and reified types to make them more accessible.
Tomer Pacific outlines the steps to migrate a Jetpack Compose project to Kotlin 2.0, emphasizing the adoption of the Compose Compiler Gradle plugin and the transition to Gradle Version Catalogs for managing dependencies. 
Ademir Queiroga explains how disabling the lintVitalAnalyzeRelease task in Gradle can significantly reduce Android release APK build times, particularly in CI environments where linting isn’t essential.
Mubarak Native offers a practical introduction to using Material Design 3 in Jetpack Compose, focusing on theming and updated components for building modern, adaptive UIs.
Siarhei Krupenich advocates for replacing bloated interactors with single-responsibility use cases in Kotlin Coroutines to improve testability, maintainability, and adherence to Clean Architecture principles.
Ignacio Carrión demonstrates how Kotlin’s sealed classes and interfaces can enhance domain modeling by enabling exhaustive when expressions, ensuring type safety, and providing clear, maintainable representations of domain concepts.
Place a sponsored post
We reach out to more than 80k Android developers around the world, every week, through our email newsletter and social media channels. Advertise your Android development related service or product!
Libraries & Code
A cross-platform desktop application for visualizing and exploring JSON data built with Compose Desktop.
Learn Kotlin Flow by real examples for Android
Amazon introduces App Platform, a lightweight framework for Kotlin Multiplatform projects that emphasizes modular architecture, lifecycle-aware scopes, and decoupled UI through presenters and renderers, with default support for kotlin-inject-anvil and Compose Multiplatform
News
From not-to-miss sessions to the legendary party, here’s a quick preview of everything waiting for you in Copenhagen, Denmark, on May 21–23.
Videos & Podcasts
In this interview, Harun shares his journey from humble beginnings to Google recognition, highlighting the impact of tech communities, overcoming challenges, and the role of event organizing and mentoring in his growth.
Philipp Lackner goes over why 99% of Android devs misunderstand use cases which leads to an overcomplicated useless architecture and how you can avoid that.
Daniel Atitienei shares thoughts on why you need a side hustle as a software engineer.
Philipp Lackner compares two popular backends among Kotlin developers: Spring Boot and Ktor.
Jov Mit's live stream recording, focusing on: Compose: Composition, Recomposition, Optimization and AI Integrations for Android Devs