Posts in tag

Medium


In the previous MAD Skills Compose Basics article, you learned how to think in Compose — you describe your UI in Kotlin as functions. No more XML needed! In this article, we will dive deeper into these functions and how you can build UI with them. As a reminder, we will be answering your questions on …

Introduction What do you do when your Android App Links don’t work the way you want them to? There are many tools available from Google to help you, such as the Play Console Deep Links page which gives you a single place to view and resolve many common issues with App Links. After being notified of an …

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 …

I welcome you to the first installment of the deep links crash course series, where we’ll show a bit of context on what is a link, then we’ll go over each type of deep link, and, at the end, we’ll discuss some security notes. A summarized version is also available in video form. Otherwise, let’s …

Wear OS has changed a lot over the last 8 years. It’s snappier, more efficient and includes a variety of UI surfaces for which you can develop. While strapping a physical device to your wrist for a few days is really the best way to get a feel for what the platform is like nowadays, it’s not …

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 …

Nowadays Android runs on several billion devices, and phones are only a part of this ecosystem. Tablets, foldables, and even laptops and desktops support Android apps so you can find your app running on a variety of form factors. In this article, you will learn how to get started with large screen support and why …

Before Android 13, when an app registered an exported component in its manifest and added an <intent-filter>, the component could be started by any explicit intent — even those that do not match the intent filter. In some circumstances this can allow other apps to trigger internal-only functionality. This behavior has been updated in Android 13. …

Learn how to create and use custom easing functions in Compose Everything that moves, accelerates, or decelerates — nothing starts or stops moving instantaneously. The ball you bounce on a floor hits the ground and then bounces back up again and eventually comes to a resting position after a few smaller bounces. A train door …

Android renders user interface (UI) by generating a frame from your app and displaying it on the screen. To ensure that a user’s interaction with your app is smooth, your app should render each frame under the refresh rate that is determined by each device–for example, Pixel 6 allows rendering 90 frames per second at the maximum, …