Tag Archives: Featured

Mercari reduces 355K lines of code, a 69% difference, by rebuilding with Jetpack Compose

Posted by the Android team

In 2020, the Mercari team took on a big initiative to update its app’s technical infrastructure. At the time, its codebase was seven years old and hadn’t undergone any major architectural updates. This affected the team’s ability to develop new features and release timely app updates. To resolve this technical debt, Mercari launched what it called the GroundUP initiative—a complete rewrite of its application across platforms, including Android.

The goal was to create a completely modernized application with a scalable design. While retooling the app, Mercari developers turned to Jetpack Compose, Android’s modern declarative toolkit for creating native UI. During the evaluation, the team learned rewriting in Jetpack Compose would help clean up their codebase and have more control over how the app looks.

A rewrite with less code

The Mercari team completely rewrote the architecture and tech stack for its Android app using Jetpack Compose. Mercari developers created a new design system and completely integrated it using Compose, enabling them to easily test and implement new features. Using this new design system, the Mercari team rewrote more than 130 UI screens for its marketplace and modernized the look and feel of many of their components.

With the help of the Jetpack Libraries, Mercari’s team eliminated all legacy code during the rewrite, drastically reducing its codebase and making it more manageable for developers. “Virtually, it’s the same app with way less code,” said Allan Conda, Android technology lead at Mercari. “The rewritten app has about 355,000 fewer lines of code, which is about 69% less than what it had before.”

Moving image showing lines of code that appear and disappear on the leftmost panel of the screen. The spacing between the boxes in the center panel changes, and the overall app view reflects these changes in the rightmost panel.

Interoperability with Views as an early adopter

When the Mercari team first began its GroundUP initiative, Jetpack Compose was only available in developer preview. They wanted the app written completely in Jetpack Compose due to its new declarative approach to creating UI. However, because it was still so new, they found themselves having to solve for unique edge cases using both toolkits.

For example, on Mercari’s listing form screens, users are prompted to input details about the merchandise they want to list. Users were then supposed to be able to select photos from their device gallery and rearrange them on this screen using a drag gesture. Gesture APIs weren’t available in Jetpack Compose at the time, so the team took advantage of Compose's AndroidView to seamlessly integrate Views that handled gestures on the listing form screen. This provided a stable yet temporary solution to implementing drag gestures until the feature became available with Jetpack Compose.

The Mercari team was impressed by how easy it was to switch between the two toolkits, and having the option to use Views alongside Compose gave them better control of edge cases like this. Compose now supports gesture APIs, and Mercari developers have since completely written and integrated the drag gesture component solely using Compose.

Jetpack Compose has matured a lot since Mercari’s initial adoption, and most Android developers no longer need to worry about having to interoperate with both toolkits as Android apps can now be written completely in Compose.

Improving and monitoring performance with Compose

Using Compose, the Mercari team automated baseline profile generation for every stable release of the app and found it to be really helpful. The home screen renders frames up to 2x faster with the default Compose baseline profile compared to without a baseline profile. By providing a custom profile, there’s an additional improvement of up to 20% faster when Mercari users are scrolling compared to just having the default baseline profile.

The team also wrote automated performance tests based on the app’s core scenarios with Android Macrobenchmark. “Using Android Macrobenchmark, we can automatically test start-up, scroll, and screen load times performance,” said Allan. “Currently, we have six core scenarios covered by these tests, like search results and browsing items.”

Additionally, Mercari developers integrated Firebase Performance Monitoring, a real-time app performance monitoring tool, with custom code to calculate scrolling performance on Compose screens. With Firebase Performance Monitoring, the Mercari team detected a performance issue on its search result screen. Using the Android Profiler to pinpoint the problem, Mercari developers discovered there were poor frame rates when scrolling search results. This resulted in the slow rendering instances being reduced by around 23.6%.

The Mercari team solved this frame rate issue with guidance from Google’s Compose performance best practices and Compose stability. Mercari developers had the app skip its Composables and hoist the unused states on the search results screen, significantly improving the frame rates.

Headshot of Allan Conda, Android Tech Lead at Mercari, similing, with quote text reads 'Jetpack Compose helped us implement our Design System and rewrite 130+ screens and many of our components'

More opportunities with Jetpack Compose

With less code to maintain, it’s much easier for Mercari developers to test and implement features. “We have a ton of experiments we can finally conduct using our refreshed platforms. Our users can expect new features coming to the Mercari app at a faster rate,” said Allan.

Mercari’s developers are excited to further develop the app using Animation APIs. With Compose, it’s much easier to animate components, which can result in huge improvements for Android UXs.

Get started

Optimize your UI development with Jetpack Compose.

Concepts users spend 70% more time using the app on tablets than on phones

Posted by the Android team

Concepts is a digital illustration app created by TopHatch that helps creative thinkers bring their visions to life. The app uses an infinitely-large canvas format, so its users can sketch, plan, and edit all of their big ideas without limitation, while its vector-based ink provides the precision needed to refine and reorganize their ideas as they go.

For Concepts, having more on-screen real estate means more comfort, more creative space, and a better user experience overall. That’s why the app was specifically designed with large screens in mind. Concepts’ designers and engineers are always exploring new ways to expand the app’s large screen capabilities on Android. Thanks to Android’s suite of developer tools and resources, that’s easier than ever.

Evaluating an expanding market of devices

Large screens are the fastest growing segment of Android users, with more than 270 million users on tablets, foldables, and ChromeOS devices. It’s no surprise then that Concepts, an app that benefits users by providing them with more screen space, was attracted to the format. The Concepts team was also excited about innovation with foldables because having the large screen experience with greater portability gives users more opportunities to use the app in the ways that are best for them.

The team at Concepts spends a lot of time evaluating new large screen technologies and experiences, trying to find what hardware or software features might benefit the app the most. The team imagines and storyboards several scenarios, shares the best ones with a close-knit beta group, and quickly builds prototypes to determine whether these updates improve the UX for its larger user base.

For instance, Concepts’ designers recently tested the Samsung Galaxy Fold and found that users benefited from having more screen space when the device was folded. With help from the Jetpack WindowManager library, Concepts’ developers implemented a feature to automatically collapse the UI when the Galaxy’s large screen was folded, allowing for more on-screen space than if the UI were expanded.

Foldable UI

Concepts’ first release for Android was optimized for ChromeOS and, because of this, supporting resizable windows was important to their user experience from the very beginning. Initially, they needed to use a physical device to test for various screen sizes. Now, the Concepts team can use Android’s resizeable emulator, which makes testing for different screen sizes much easier.

Android’s APIs and toolkit carry the workload

The developers’ goal with Concepts is to make the illustration experience feel as natural as putting pen to paper. For the Concepts team, this meant achieving as close to zero lag as possible between the stylus tip and the lines drawn on the Concepts canvas.

When Concepts’ engineers first created the app, they put a lot of effort into creating low-latency drawing themselves. Now, Android’s graphical APIs eliminate the complexity of creating efficient inking.

“The hardware to support low-latency inking with higher refresh rate screens and more accurate stylus data keeps getting better,” said David Brittain, co-founder and CEO of TopHatch, parent company of Concepts. “Android’s mature set of APIs make it easy.”

Concepts engineers also found that the core Android View APIs take care of most of the workload for supporting tablets and foldables and make heavy use of custom Views and ViewGroups in Concepts. The app’s color wheel, for example, is a custom View drawing to a Canvas, which uses Animators for the reveal animation. View, Canvas, and Animator are all classes from the Android SDK.

“Android’s tools and platform are making it easier to address the variety of screen sizes and input methods, with well-structured APIs for developing and increasing the number of choices for testing. Plus, Kotlin allows us to create concise, readable code,” said David.


Concepts’ users prefer large screens

Tablets and foldables represent the bulk of Concepts’ investments and user base, and the company doesn’t see that changing any time soon. Currently, tablets deliver 50% higher revenue per user than smartphone users. Tablets also account for eight of the top 10 most frequently used devices among Concepts’ users, with the other two being ChromeOS devices.

Additionally, Concepts’ monthly users spend 70% more time engaging with the app on tablets than on traditional smartphones. The application’s rating is also 0.3 stars higher on tablets.

“We’re looking forward to future improvements in platform usability and customization while increasing experimentation with portable form factors. Continued efforts in this area will ensure high user adoption well into the future,” said David.

Start developing for large screens today

Learn how you can reach a growing audience of users by increasing development for large screens and foldables today.

What it means to be an Android Google Developer Expert

Posted by Yasmine Evjen, Community lead, Android DevRel

The community of Android developers is at the heart of everything we do. Seeing the community come together to build new things, encourage each other, and share their knowledge encourages us to keep pushing the limits of Android.

At the core of this is our Android Google Developer Experts, a global community that comes together to share best practices through speaking, open-source contributions, workshops, and articles. This is a caring community that mentors, supports each other, and isn’t afraid to get their hands dirty with early access Android releases, providing feedback to make it the best release for developers across the globe.

We asked, “What do you love most about being in the #AndroidDev and Google Developer Expert community?”

Gema Socorro says, ”I love helping other devs in their Android journey,” and Jaewoog Eum shares the joy of “Learning, building, and sharing innovative Android technologies for everyone.”

Hear from the Google Developer Expert Community

We also sat down with Ahmed Tikiwa, Annyce Davis, Dinorah Tovar, Harun Wangereka, Madona S Wambua, and Zarah Dominguez - to hear about their journey as an Android Developer and GDE and what this role means to them - watch them on The Android Show below.

Annyce, VP Engineer Meetup shares, “the community is a great sounding board to solve problems, and helps me stay technical and keep learning.”

Does the community inspire you? Get involved by speaking at your local developer conferences, sharing your latest Android projects, and not being afraid to experiment with new technology. This year, we’re spotlighting community projects! Tag us in your blogs, videos, tips, and tricks to be featured in the latest #AndroidSpotlight.

Active in the #AndroidDev community? Become an Android Google Developer Expert.

A group of Android Developers and a baby, standing against a headge of lush greenery, smiling

Play Commerce prevented over $2 billion in fraudulent and abusive transactions in 2022

Posted by Sheenam Mittal, Product Manager, Google Play

Google Play Commerce enables you to monetize your apps and games at scale in over 170 markets, without the complexities and time consumption required to run your own global commerce platform. It enables you to easily transact with millions of users around the world and gives users trusted and safe ways to pay for your digital products and content. Ensuring developers and users have a secure purchase experience has been a key pillar of Play Commerce, and we achieve this by continuously preventing and monitoring for bad actors looking to defraud and abuse your apps.

Preventing fraud and securing purchases

In 2022, we prevented over $2 billion in fraudulent and abusive transactions. Bad actors looking to carry out abuse on apps implement an array of strategies across both one–time purchases as well as auto-renewing payments. For example, they may attempt to purchase an item in your app with a compromised form of payment, or request a refund for an in-app purchase that’s been already consumed or sold, or use scammed gift cards for purchases. When a combined or coordinated attempt is carried out by bad actors, it can result in large-scale abuse on your app. Preventing such fraud and abuse requires a comprehensive approach, consisting of automated solutions and an array of internal monitoring tools combined with human expertise.

Empower developers with tools to mitigate app abuse

Information asymmetry between Google Play and developers is commonly exploited by bad actors. Two of the most effective solutions that you can implement to help address this are Voided Purchases API and Obfuscated Account ID. Over 70% of our top 200 monetizing developers have integrated these solutions to reduce fraud and abuse on their apps.

  • Voided Purchases API provides you with a list of in-app and subscription orders for each user that have been voided. You can implement revocation that prevents the user from accessing products from those orders.
Diagram detailing Improve losses, preserve app economy, and secure game integrity as benfits of Voided Purchases API
Benefits of Voided Purchases API
  • Obfuscated Account ID helps Play detect fraudulent transactions, such as many devices making purchases on the same account in a short period of time.

You can also use Play Integrity API to protect your apps and games from potentially risky and fraudulent interactions, such as cheating and unauthorized access. You call the Play Integrity API at important moments to check that user actions or server requests are coming from your unmodified app, installed by Google Play, running on a genuine Android device. If something is wrong, your app’s backend server can respond with appropriate actions to prevent attacks and reduce abuse. Developers using the API have seen an average of over 50% reduction in unauthorized access of their apps and games. Stay tuned for new highly-requested feature updates.

Chart showing the flow of how Play Integrity API works from user action or server request to app request a Play Inegrity API verdict, to Play returns verdicts to backend server decides what to do next.
Flowchart of how Play Integrity API works

Looking forward

This month, we launched Purchases.product.consume, which allows you to consume in-app items using the Play Developer API, reducing the risk of client-side abuse by shifting more business logic to your secure backends. For example, if a bad actor purchases an item from your app but tampers with the client side, the purchase will be automatically refunded due to lack of acknowledgement after 3 days of purchase. Using server side consumption will prevent this type of app abuse.

Google Play Commerce is committed to providing developers and users a secure purchase experience. Learn more about how to prevent bad actors from harming users and abusing your app by visiting this guide, as well as other 2023 initiatives helping keep Android and Google Play safe.

Launching new #WeArePlay stories from India

Posted by Parul Tyagi, Developer Marketing

Every month, over 2.5 billion people visit Google Play to discover millions of apps and games, which are created by people with all sorts of backgrounds, who founded companies big and small.

#WeArePlay celebrates this community of people building apps and games businesses, with monthly spotlights of founders from across the world.

Last summer we went on a virtual tour of the USA, sharing stories from every state, and today we’re continuing our tour across the world with our next stop: India.

To kick us off, we are spotlighting 20 stories from across the country, with many more coming throughout the year.

Moving text reads #WeArePlay INDIA Discover now g.co/play/weareplay-india Google Play

First, we begin with Pramit from Gurugram, Haryana. He was climbing the corporate ladder when medication he was taking damaged his retina, therefore losing his vision. No longer able to read, he required help from friends and family to perform daily tasks. One day, when a friend was booking a driver for him, Pramit got the idea to create a tool that could function exactly like a virtual friend through voice-activated commands. Using his app Louie Voice Control, people can operate other apps using their voice, making technology infinitely more accessible for the visually impaired.

#WeArePlay Pramit Visioapps Technology Gurugram, Haryana g.co/play/weareplay-india Google Play

Next, meet Sourav and Gunjan from Kolkata, West Bengal. When Sourav and Gunjan had their son, they noticed how fascinated he was watching videos on their phones. This gave Gunjan the idea to provide meaningful screen time for him by making educational games for young children. Fast forward to today and they have 42 apps, including Yoga for Kids where youngsters follow along with simple yoga poses and unlock animated pets as rewards.

#WeArePlay Sourav & Gunjan Gunjanapps Studios Kolkata, West Bengal g.co/play/weareplay-india Google Play

Now onto Tejas from Rajkot, Gurajat. He was always determined to go his own way in life and pursue programming, rather than his family's construction business. After discovering how popular cooking games are, his company TheAppGuruz makes versions catered specifically for Asian audiences - with some full of Indian dishes and specialties. Now, Tejas and his team are developing more cooking simulation titles, as well as traditional board games for a global audience.

#WeArePlay Tejas TheAppGuruz Rajkot, Gujarat g.co/play/weareplay-india Google Play

And last but not least, Anshul and Rohan from Mumbai, Maharashtra. After bonding over their experiences in overcoming mental health struggles, they discovered they had the same goal: to create something in the mental wellness space. So they built Evolve - an app with guided meditations, breathing exercises and daily affirmations. During the pandemic, the pair realized the LGBTQ+ community was one of the most underserved in mental health support, so they adapted Evolve to meet their needs.

#WeArePlay Rohan &Anshul Evolve Mumbai, Maharashtra g.co/play/weareplay-india Google Play

Check out all the stories now at g.co/play/weareplay-india and stay tuned for even more coming soon.


How useful did you find this blog post?

Launching new #WeArePlay stories from India

Posted by Parul Tyagi, Developer Marketing

Every month, over 2.5 billion people visit Google Play to discover millions of apps and games, which are created by people with all sorts of backgrounds, who founded companies big and small.

#WeArePlay celebrates this community of people building apps and games businesses, with monthly spotlights of founders from across the world.

Last summer we went on a virtual tour of the USA, sharing stories from every state, and today we’re continuing our tour across the world with our next stop: India.

To kick us off, we are spotlighting 20 stories from across the country, with many more coming throughout the year.

Moving text reads #WeArePlay INDIA Discover now g.co/play/weareplay-india Google Play

First, we begin with Pramit from Gurugram, Haryana. He was climbing the corporate ladder when medication he was taking damaged his retina, therefore losing his vision. No longer able to read, he required help from friends and family to perform daily tasks. One day, when a friend was booking a driver for him, Pramit got the idea to create a tool that could function exactly like a virtual friend through voice-activated commands. Using his app Louie Voice Control, people can operate other apps using their voice, making technology infinitely more accessible for the visually impaired.

#WeArePlay Pramit Visioapps Technology Gurugram, Haryana g.co/play/weareplay-india Google Play

Next, meet Sourav and Gunjan from Kolkata, West Bengal. When Sourav and Gunjan had their son, they noticed how fascinated he was watching videos on their phones. This gave Gunjan the idea to provide meaningful screen time for him by making educational games for young children. Fast forward to today and they have 42 apps, including Yoga for Kids where youngsters follow along with simple yoga poses and unlock animated pets as rewards.

#WeArePlay Sourav & Gunjan Gunjanapps Studios Kolkata, West Bengal g.co/play/weareplay-india Google Play

Now onto Tejas from Rajkot, Gurajat. He was always determined to go his own way in life and pursue programming, rather than his family's construction business. After discovering how popular cooking games are, his company TheAppGuruz makes versions catered specifically for Asian audiences - with some full of Indian dishes and specialties. Now, Tejas and his team are developing more cooking simulation titles, as well as traditional board games for a global audience.

#WeArePlay Tejas TheAppGuruz Rajkot, Gujarat g.co/play/weareplay-india Google Play

And last but not least, Anshul and Rohan from Mumbai, Maharashtra. After bonding over their experiences in overcoming mental health struggles, they discovered they had the same goal: to create something in the mental wellness space. So they built Evolve - an app with guided meditations, breathing exercises and daily affirmations. During the pandemic, the pair realized the LGBTQ+ community was one of the most underserved in mental health support, so they adapted Evolve to meet their needs.

#WeArePlay Rohan &Anshul Evolve Mumbai, Maharashtra g.co/play/weareplay-india Google Play

Check out all the stories now at g.co/play/weareplay-india and stay tuned for even more coming soon.


How useful did you find this blog post?

What’s new in the Jetpack Compose March ’23 release

Posted by Jolanda Verhoef, Android Developer Relations Engineer

Today, as part of the Compose March ‘23 Bill of Materials, we’re releasing version 1.4 of Jetpack Compose, Android's modern, native UI toolkit that is used by apps such as Booking.com, Pinterest, and Airbnb. This release contains new features like Pager and Flow Layouts, and new ways to style your text, such as hyphenation and line-break behavior. It also improves the performance of modifiers and fixes a number of bugs.

Swipe through content with the new Pager composable

Compose now includes out-of-the-box support for vertical and horizontal paging between different content. Using VerticalPager or HorizontalPager enables similar functionality to the ViewPager in the view system. However, just like the benefits of using LazyRow and LazyColumn, you no longer need to create an adapter or fragments! You can simply embed a composable inside the Pager:

// Display 10 items HorizontalPager(pageCount = 10) { page -> // Your specific page content, as a composable: Text( text = "Page: $page", modifier = Modifier.fillMaxWidth() ) }

ALT TEXT

These composables replace the implementation in the Accompanist library. If you already use the Accompanist implementation, check out the migration guide. See the Pager documentation for more information.

Get your content flowing with the new Flow Layouts

FlowRow and FlowColumn provide an efficient and compact way to lay out items in a container when the size of the items or the container are unknown or dynamic. These containers allow the items to flow to the next row in the FlowRow or next column in the FlowColumn when they run out of space. These flow layouts also allow for dynamic sizing using weights to distribute the items across the container.

Here’s an example that implements a list of filters for a real estate app:

ALT TEXT

@Composable fun Filters() { val filters = listOf( "Washer/Dryer", "Ramp access", "Garden", "Cats OK", "Dogs OK", "Smoke-free" ) FlowRow( horizontalArrangement = Arrangement.spacedBy(8.dp) ) { filters.forEach { title -> var selected by remember { mutableStateOf(false) } val leadingIcon: @Composable () -> Unit = { Icon(Icons.Default.Check, null) } FilterChip( selected, onClick = { selected = !selected }, label = { Text(title) }, leadingIcon = if (selected) leadingIcon else null ) } } }

Performance improvements in Modifiers

The major internal Modifier refactor we started in the October release has continued, with the migration of multiple foundational modifiers to the new Modifier.Node architecture. This includes graphicsLayer, lower level focus modifiers, padding, offset, and more. This refactoring should bring performance improvements to these APIs, and you don't have to change your code to receive these benefits. Work on this continues, and we expect even more gains in future releases as we migrate Modifiers outside of the ui module. Learn more about the rationale behind the changes in the ADS talk Compose Modifiers deep dive.

Increased flexibility of Text and TextField

Along with various performance improvements, API stabilizations, and bug fixes, the compose-text 1.4 release brings support for the latest emoji version, including backwards compatibility with older Android versions 🎉🙌. Supporting this requires no changes to your application. If you’re using a custom emoji solution, make sure to check out PlatformTextStyle(emojiSupportMatch).

In addition, we’ve addressed one of the main pain points of using TextField. In some scenarios, a text field inside a scrollable Column or LazyColumn would be obscured by the on-screen keyboard after being focused. We re-worked core parts of scroll and focus logic, and added key APIs like PinnableContainer to fix this bug.

Finally, we added a lot of new customization options to Text and its TextStyle:

  • Draw outlined text using TextStyle.drawStyle.
  • Improve text transition and legibility during animations using TextStyle.textMotion.
  • Configure line breaking behavior using TextStyle.lineBreak. Use built-in semantic configurations like Heading, Paragraph, or Simple, or construct your own LineBreak configuration with the desired Strategy, Strictness, and WordBreak values.
  • Add hyphenation support using TextStyle.hyphens.
  • Define a minimum number of visible lines using the minLines parameter of the Text and TextField composables.
  • Make your text move by applying the basicMarquee modifier. As a bonus, because this is a Modifier, you can apply it to any arbitrary composable to make it move in a similar marquee-like fashion!
  • ALT TEXT
    Marquee text using outline with shapes stamped on it using the drawStyle API.

Improvements and fixes for core features

In response to developer feedback, we have shipped some particularly in-demand features & bug fixes in our core libraries:
  • Test waitUntil now accepts a matcher! You can use this API to easily synchronize your test with your UI, with specific conditions that you define.
  • animatedContent now correctly supports getting interrupted and returning to its previous state.
  • Accessibility services focus order has been improved: the sequence is now more logical in common situations, such as with top/bottom bars.
  • AndroidView is now reusable in LazyList if you provide an optional onReset lambda. This improvement lets you use complex non-Compose-based Views inside LazyLists.
  • Color.lerp performance has been improved and now does zero allocations: since this method is called at high frequency during fade animations, this should reduce the amount of garbage collection pauses, especially on older Android versions.
  • Many other minor APIs and bug fixes as part of a general cleanup. For more information, see the release notes.

Get started!

We’re grateful for all of the bug reports and feature requests submitted to our issue tracker - they help us to improve Compose and build the APIs you need. Continue providing your feedback, and help us make Compose better!

Wondering what’s next? Check out our updated roadmap to see the features we’re currently thinking about and working on. We can’t wait to see what you build next!

Happy composing!

Key product updates from the 2023 Google for Games Developer Summit

Posted by Greg Hartrell, Product Director, Games on Android & Google Play

Whether you’re working on your first game or your next season pass, Google remains committed to helping you across the development and publishing lifecycle. At our Google for Games Developer Summit, I was privileged to share some exciting new tools and insights from Android and Google Play that will help developers like you build games for everyone.

Check out our video playlist to watch the keynote and product sessions on demand, or keep reading for a quick recap of the highlights.

Building great Android games

App quality is the foundation of everything we do at Android and Google Play, and because every user matters, we have updated our approach to technical quality with more emphasis on the user experience.

Google Play’s technical quality bar now uses new user-perceived crash and ANR metrics, which we evaluate on a per-device basis as well as overall. We have introduced an 8% quality bar at the device level, and we now steer users on Google Play away from titles that do not meet this threshold on their phone. To help you meet these guidelines, we’ve launched a number of new features in Android vitals to make it easier to monitor and act on issues. Learn more about these features in this session and about our quality bar in this blog post.

  • Performance is another key aspect of technical quality and for a smooth user experience, games on Google Play should aim for at least 30 frames per second. To help you reach this goal, we’ve just launched frame rate metrics for games in Android vitals. You can see these metrics in Play Console or with the Developer Reporting API. In due course, we will start steering users away from games that cannot achieve 20 frames per second on their phone. Learn more about the new metric in this session.

Screenshot of Android vitals in Play Console
Android vitals in Play Console now offers frame rate metrics to help you understand how smooth and fluid your game feels to users.

We’ve also introduced a range of new tools and services to help you improve the quality of your game.

  • We announced updates to Firebase Crashlytics to improve the quality of Unity stack traces, including Unity on-demand-fatal event reporting. We also now support the symbolication of native Android ANRs, and will soon support memory debugging for GWP-ASAN-enabled games.

  • We’re also introducing a suite of Adaptability APIs to the Android Game Development Kit to help your game respond to changing device performance and thermal scenarios. The Android Dynamic Performance Framework includes a hinting library that can send signals about your workload to the CPU, so your game can tap into performance when you need it and save power when you don’t. There’s also a Thermal API to listen during runtime for when the device is about to thermally throttle so that you can adjust your workloads to smooth performance without overheating the device.


Connecting with players

Building and connecting with your players is key to success for many games, which is why we’re creating more opportunities to help you find new players or engage and re-acquire existing ones.

  • We relaunched our LiveOps tools as Promotional content and made it available to more developers. Eligible developers can upload promotional assets in Play Console to promote in-game events, offers and deals, and major updates, and customize that content for new or returning users.

  • Custom store listings allow you to create up to 50 different store listings with different descriptions and graphic assets based on country, pre-registration status, and more. We’ve now introduced inactive custom store listings, so you can target churned users with a different story about how to come back to your game.

  • We also announced the early access program for Machine Translation in the Play Console, which can translate your game’s strings in minutes. This uses Google Translate and the best-in-class transformer-based language models for quality translation in over 8 languages including Simplified Chinese and Japanese. Sign up here to be one of the first developers to try it.

Reaching higher with large screens

Large screens offer new opportunities for an enhanced gaming experience. Our research shows that the majority of phone owners have access to a large screen, like a tablet, Chromebook, or PC, and gamers want to play their games across those screens. Large screens give you the real estate to implement high-resolution graphics, take advantage of multi-tasking or foldable-specific experiences, and add keyboard, mouse, and game controller support to give users more control.

The beauty of Android is that your games can be easily adapted for all these screens and we’ve made several updates to make the user experience better.

Four different screen sizes displaying seamless sync across devices playing Asphalt 9:Legends
Easily adapt your game to different form factors so your users can play whenever and wherever they want.
(Example shown here is Asphalt 9: Legends, subject to game availability and PC compatibility.)

  • Although each form factor has its unique advantages, you don’t need to customize your game for each one independently. Watch this session to ensure great playability across large-screen platforms.

  • Google Play Games for PC, now in beta in 13 countries, is expanding to Japan and countries in Europe in the coming months and is also expanding its catalog to include top games like Garena Free Fire, Ludo King, and MapleStory M.

  • And starting today, we’re making it much easier to join Google Play Games on PC with your existing mobile build, whether you support x86 or not. Through our partnership with Intel, you can now submit your mobile build while you work on optimization — no need to recompile for x86 right away.


You can learn more about these updates in this blog post or express interest in joining Google Play Games on PC.

For more announcements from the Google for Games Developer Summit, please visit g.co/gamedevsummit. Thank you as always for your thoughtful feedback and partnership as we create high-quality game experiences for players around the world.

Google Play Games on PC is available to download in 13 countries. Please see g.co/googleplaygames for more information. Game titles may vary by region.

Happening now! Unpacking the latest in large screens and foldables + MAD Skills on #TheAndroidShow

Rebecca Gutteride and Madona Wambua, Co-Hosts of #TheAndroidShow

We’re just about to kick off another episode of #TheAndroidShow, you can watch live here! In this episode, we’re unpacking the latest Android foldables and large screens and the incredible opportunity these open up for you and your users, we’re continuing our MAD Skills series on Compose layouts and modifiers with a live Q&A, plus more! If you haven’t already, there’s still time to get your burning questions answered from the team, using #AskAndroid. We've assembled a team of experts ready to answer your questions live!

The latest Android large screens and foldables from our Android friends

One of the coolest moments for hardware enthusiasts was last week at Mobile World Congress, where Android device makers from around the world gather to unveil the latest innovations. It was an especially big year for foldables in particular, with a number of compelling devices coming out. We had the opportunity to catch up with three Android partners and see their latest hardware: the Oppo Find N2 Flip, the HONOR Magic Vs, and the Tecno Phantom V Fold. These launches bring new, high-quality devices into the foldable category, giving users more options as they look for their next mobile device and signaling an investment in foldables across the Android ecosystem. For developers, foldables can present unique opportunities (and challenges); large screen devices like foldables and tablets can challenge assumptions that you might have made in the past around configuration changes, cameras, and the shape and size of the screen - or screens. On devices with more screen real estate and folds, users are expecting better multi-tasking and more content-rich app experiences that adapt to these form factors.

As this category continues to expand, we want to make large screen optimization as easy as possible for you. We’ve established tiered quality guidelines to help prioritize which behaviors are the most important to focus on across screen sizes and, late last year, we announced new guidance and updated tools to help you update your app to meet those guidelines. To make it easier to quickly test apps on a variety of representative devices, we have a growing collection of resizable, foldable, tablet and desktop emulators, and updated Material adaptive design guidance for these devices with more specific Canonical Layout designs!

To get started, check out the gallery page to get inspired with high fidelity mockups, links to material design guidance, implementation guides, and case studies from apps like yours. Then, test your app for large screens using the resizable emulator in Android Studio to see how your app looks today!


MAD Skills: Compose Layouts & Modifiers

Our latest MAD skills series deep-dives into Compose layouts and modifiers. The initial episodes cover layout fundamentals including what out-of-the-box APIs Compose offers, how you can use modifiers to stylize your composables, and the different phases in Compose. We then dive deeper into modifier chaining and building custom layouts for complex use cases. The series culminates in a live Q&A–happening right now, where we'll be answering the questions you've been asking us using #AskAndroid. You can view the YouTube playlist to rewatch the videos in the series.

What it means to be an Android Google Developer Expert

The Android Developer community is at the heart of everything we do and at the core of this is our Android Google Developer Experts. Spanning all over the world, the community comes together to share best practices through speaking, open-source contributions, workshops, and articles, and gets involved in early access Android releases - providing valuable feedback to make improvements for developers everywhere! Tune in to #TheAndroidShow to hear from six GDEs about their journey as an Android Developer and Google Developer Expert and what this role means to them.


App Quality Insights in Android Studio

In 2022 we released Android Studio’s App Quality Insights (AQI) which helps you discover, investigate, and reproduce issues reported by Crashlytics within the context of your local Android Studio project. In this segment we go behind the scenes with David Motsonashvili, a Software Engineer on the Firebase team, to learn more about where the idea came from. We also explore how crash management has evolved throughout the years with Annyce Davis, VP of Engineering at Meetup and GDE. Tune into #TheAndroidShow to watch the segment, read the AQI documentation to learn more, and download the latest version of Android Studio to try it out.


Now in Android

Now in Android is your ongoing guide to what’s new and notable in the world of Android development, and this week we covered the second Android 14 Developer Preview, Google Play policy changes around Wear OS app quality, the release of the full Android Basics with Compose course, Advanced Compose Layout Concepts, Drawing in Compose, Multi-Window and Activity Embedding, TensorFlow Lite in Google Play Services, and more.

Tune in!

#TheAndroidShow is your conversation with the Android developer community, this time hosted by Rebecca Gutteridge and Madona Wambua. Tweet us your questions, and let us know what you’d like to hear in future videos from the Android team. It’s all happening right now – and you can rewatch it at any time!

What it means to be an Android Google Developer Expert

Posted by Yasmine Evjen, Community lead, Android DevRel

The community of Android developers is at the heart of everything we do. Seeing the community come together to build new things, encourage each other, and share their knowledge encourages us to keep pushing the limits of Android.

At the core of this is our Android Google Developer Experts, a global community that comes together to share best practices through speaking, open-source contributions, workshops, and articles. This is a caring community that mentors, supports each other, and isn’t afraid to get their hands dirty with early access Android releases, providing feedback to make it the best release for developers across the globe.

We asked, “What do you love most about being in the #AndroidDev and Google Developer Expert community?”

Gema Socorro,”I love helping other devs in their Android journey,” and Jaewoog Eum shares the joy of “Learning, building, and sharing innovative Android technologies for everyone.”

Hear from the Google Developer Expert Community

We also sat down with Ahmed Tikiwa, Annyce Davis, Dinorah Tovar, Harun Wangereka, Madona S Wambua, and Zarah Dominguez - to hear about their journey as an Android Developer and GDE and what this role means to them - watch them on The Android Show below.

Annyce, VP Engineer Meetup shares, “the community is a great sounding board to solve problems, and helps me stay technical and keep learning”

Does the community inspire you? Get involved by speaking at your local developer conferences, sharing your latest Android projects, and not being afraid to experiment with new technology. This year, we’re spotlighting community projects! Tag us in your blogs, videos, tips, and tricks to be featured in the latest #AndroidSpotlight.

Active in the #AndroidDev community? Become an Android Google Developer Expert.

A group of Android Developers and a baby, standing against a headge of lush greenery, smiling