Posts in tag

Jetpack Compose


In this post, I wanted to show you how I looked into a performance issue in Jetsnack and how I went about debugging and fixing it in Jetpack Compose. This post is available as a video as well if you prefer. Let’s get started by looking at the Jetsnack sample. The details screen has a fancy collapsing …

We’re happy to announce that the new Jetpack Glance framework, which lets you build app widgets and wear tiles with Jetpack Compose-like code, has reached alpha-04. We also just released a standalone experimental repository to supplement Jetpack Glance with tools that are commonly required for development but not yet available. Important: This project is independent from the AndroidX Glance repository and development. …

Hi everyone! I spent my summer as a Developer Relations Engineer Intern on Google’s Android DevRel team. Joining Google, I was ecstatic about the opportunity to have an impact in the developer community. In this blog post, I will be discussing modern approaches to creating Android media apps through my experience in converting the Universal …

Accompanist is a group of libraries that aim to supplement Jetpack Compose with features that are commonly required by developers but not yet officially supported in Jetpack Compose AndroidX libraries. Accompanist is a labs-like environment for new Compose APIs. We use it to help fill known gaps in the Compose toolkit, experiment with new APIs and to gather …

Today, we’re releasing version 1.2 of Jetpack Compose, Android’s modern, native UI toolkit, continuing to build out our roadmap. This release contains new features like downloadable fonts, lazy grids, and improvements for tablets and Chrome OS with better focus, mouse, and input handling. Compose is our recommended way to build new Android apps for phone, tablets and …

TL;DR RecyclerView 1.3.0-alpha02 and Compose UI 1.2.0-beta02 bring out-of-the-box performant usage of composables from RecyclerView — no extra code required! If you had previously implemented our guidance for Compose in RecyclerView, you should now remove this code. Introducing Compose incrementally in your codebase means that you can end up in the situation when you’re using composables as items …

Have you ever measured the performance of your composable and discovered it is recomposing more code than you expect? “I thought Compose was meant to intelligently skip composables when state hasn’t changed?” you might ask. Or when reading Compose code you might see classes annotated with <a class="au ll" href="https://developer.android.com/reference/kotlin/androidx/compose/runtime/Stable" target="_blank" rel="noopener ugc nofollow">@Stable</a> or <a class="au ll" …

Starting today, the various Jetpack Compose libraries will move to independent versioning schemes. This creates the possibility for sub-groups such as androidx.compose.compiler or androidx.compose.animation to follow their own release cycles. Allowing these libraries to be versioned independently will decouple dependencies which were previously implicitly coupled, thereby making it easier to incrementally upgrade your application and therefore stay up-to-date with the latest Compose …

Interoperability and Compose API lessons learned while building Maps Compose This year we released the Maps Compose library, a Jetpack Compose library for adding Google Maps to your app. At its core, Maps Compose is an interop library for the Maps SDK for Android that exposes Compose friendly APIs. So, to create the composable elements of Maps …

Using Animatable to achieve Custom Canvas Animations Imagine the smoothest app experience you’ve seen… Everything moving along with silky smooth transitions and sensible reactions to your interactions…. Are you drooling yet? 🤤 Well you no longer need to dream, as adding animations with Compose will make this dream a reality. Don’t believe me? Read on. …