Google I/O was held virtually this year via live streams throughout the week of May 18th. The selection of keynotes reflected the huge variety of Google’s services, and the opening keynote touched on things like hosting, machine learning, Maps, security, Photos, search enhancements, and even some internal projects like a 3D videoconferencing “window” named Project Starline.
As an Android user, I was pretty excited to see what was coming in the now-in-beta Android 12. The most immediate user-facing change is the new “Material You” design language leveraged throughout the OS, updating elements to have a bolder look and a stronger emphasis on guided user customization. Almost every element of the Android UI has a different look to it: this includes the lock screen, notifications, Quick Settings, transitional animations, and even the overscroll effect. Widgets are getting a revamp alongside the broader visual changes, allowing them to adapt naturally to the rest of the phone’s theme. Other, less obvious features include the Privacy Dashboard (an easy-to-read timeline of all the privacy data used over the past 24 hours), alerts for when apps access the clipboard, and offline processing for Live Caption and Now Playing. While I haven’t taken the plunge and installed it on my phone yet, I’m looking forward to its release (likely in September, going by past years).
On the developer side of things, I’m probably most excited to see Jetpack Compose, the Kotlin-based declarative design framework for Android comparable to SwiftUI and Flutter UI, finally hitting 1.0 in July. This should open up some options when it comes to rapidly making UI layouts, previewing them, and testing them in isolation (even on-device). Tons of other services are getting updates across the board, though, of course: Firebase is getting a ton of new testing features and extension support for tying into other services, ARCore is providing a new depth API to allow apps to use raw depth data in an augmented reality scene, and Google Play Billing is adding new payment options for apps to utilize, to name a few.
Of course, Android 12 will be bringing plenty of developer-side changes along with it. While a lot of the updates involve leveraging the new OS functionality above (like the enhanced Widgets), a couple that surprised me were a “Performance Class” tool (which allows an app to quickly polling how powerful a device is so it can adjust appropriately), a new Splash Screen API (which will finally allow apps to show something richer than the very limited existing splash screens), and easy-to-use visual effects (blurring, color filters) that can be applied to UI views. That last one in particular is something I’ve wanted for years.