Now in Android #84. Top MAD things at I/O, Designing for… | by Daniel Galpin | Android Developers | Jun, 2023
Daniel Galpin
Android Developers

Welcome to Now in Android, your ongoing guide to what’s new and notable in the world of Android development.

For those who would rather watch!
For those who would rather listen!

Most of the content of this post is available in the form of a video or podcast, so feel free to watch or listen rather than read on. (Or do all three to help you remember! There won’t be a quiz.)

A developer sitting at a computer with a monitor in front of them with it’s back to us, with an Android, Kotlin, and Jetpack logos on it. On the side of the image, we see three icons representing a chat bot, compose performance, and Kotlin.
Top 3 Things to know in Modern Android Development at Google I/O 2023

Continuing our I/O coverage, we released a short video and blog detailing the top three things to know from Modern Android Development at Google I/O 2023:

  1. The preview of Studio Bot for US-based developers in the Canary release of Android Studio Hedgehog
  2. Jetpack Compose updates such as flow layout improvements, performance improvements in the modifier system, new Material components, the Glance library beta, and Compose for TV
  3. Kotlin updates, including our recommendation to use Kotlin for build scripts and version catalogs, and our collaboration with Jetbrains on the new K2 compiler

Check out the blog, video, and the MAD playlist from I/O for more detail.

Wear OS Design Series text with the Wear OS text inside of a clock face on the left, and a rounded shape on the right.
Designing for Wear OS

Our UX Research and Design team released a series of videos to help with the challenges of designing and building watch experiences that work for everyone. They cover how best to design for your target audience, how to make the most of the watch form factor with a series of design principles, and introduce how to approach product inclusion throughout the development lifecycle.

We had three interesting Alphas show up in our Jetpack Libraries since the last episode of Now in Android. First of all Autofill 1.3 alpha 01 added autofill hint constants for things like loyalty accounts, gift cards, and flights. Window 1.2 alpha 01 stabilized testing APIs around Activity embedding and WindowLayoutInfoTracker. Navigation 2.7 alpha 01 brought the code from Accompanist Navigation Animation into Navigation Compose, meaning that all of the support for setting custom transitions that existed in AnimatedNavHost is now directly supported in NavHost, and we’ll soon be formally deprecating Accompanist Navigation.

You can see all the AndroidX release notes here.

Android Developers Backstage

There has been one episode of the Android Developers Backstage posted since the last Now in Android.

In Episode 197: Studio Bot, Tor, Romain, and Chet talk with Siva Velusamy and Sandhya Mohan from the Android Studio team about the just-launched Studio Bot, the AI-powered assistant that enables conversational queries within Android Studio to help with coding, commenting, confusion, or if you just need a friend. Speaking of confusion, we’ve now posted a video as well, so you can choose to watch people talking into microphones, or just listen to them.

For Watching People Talk into Microphones
For Listening to People Talk into Microphones

We covered how WPS uses ML Kit to seamlessly translate documents into 43 languages with free, offline, translations, helping students better learn to read and write foreign languages. WPS uses Dynamic Delivery to download ML Kit’s translation module on demand, reducing the initial download size

Louis blogged about how to listen to user interactions in Jetpack Compose and create reusable visual indications that can be applied across your application for a consistent and responsive user experience. Common interactions include Press, Hover, Focus, and Drag. By observing an InteractionSource, you can keep track of when events start and stop, and reduce that information into visual state. You can then use the patterns for observing interactions to build higher level, reusable components.

Chris demystified ViewCompositionStrategy. The post covers what ViewCompositionStrategy is, why it’s needed, and how you can pick the right strategy for your use case to avoid state loss.

Ben covered how Turo reduced the startup time of their app by 77% using Android’s best tools, resources, and practices. The post details how Turo used the App Startup Library to initialize multiple components during launch, parallelized and deferred their network requests, applied baseline profiles, and more.

The Google Play team released two videos detailing common accessibility issues around content labels and color contrast, and how Pre-launch Reports (PLR) can help identify them in your app.

The Google Pay team did a livestream where they walked through an integration tutorial, answering questions from the audience, and a recording is available for you to watch.

We had a bunch of great drops from the Google for Games developer summit:

Around Google Play Games on PC, we covered the certification process and common changes needed to bring your game to the PC platform, we talked about the business of cross-platform games with an industry panel, and Com2uS talked about how and why they brought Summoners War: Chronicles to the platform.

We also covered how ADPF: the Android Dynamic Performance Framework helps you respond to and influence runtime performance in your games on Android, highlighting how to use this technology with the APIs or from within Unity.

We talked Open GL ES vs Vulkan, including an overview of the graphics APIs, their respective benefits, and how to decide which API or APIs to use in your game.

Finally, we covered Google Play’s monetization tools, how to design your monetization strategy, and best practices around hybrid monetization.

That’s it for this week with Top 3 MAD things at I/O, Designing for Wear OS, InteractionSource, ViewComposition, and Navigation Animation in Jetpack Compose, Game Development, Studio Bot, Pre-Launch Accessibility, and more!

Check back soon for the next update from the Android developer universe! 💫