Author Archives: Android Developers

Evolution of Crash Management: Behind the Scenes with App Quality Insights

Posted by Rebecca Gutteridge, Senior Developer Relations Engineer

Hey there! I’m Rebecca Gutteridge, Senior Developer Relations Engineer at Google. As someone who has been working closely with developers to understand how we can make the Android platform better, I’m passionate about helping developers improve their app quality to create amazing experiences for users. In 2022 we announced Android Studio’s App Quality Insights (AQI) window which enables developers to discover, investigate, and reproduce issues reported by Firebase Crashlytics, directly within the context of your local Android Studio project. This is a big step in how Android developers can improve their app stability, and I wanted to learn more about the evolution of how mobile developers have managed crashes throughout the years. You can watch the behind the Scenes video on AQI here, and within the latest episode of #TheAndroidShow.


Early Days of Crash Management

I first chatted with Annyce Davis, VP of Engineering at Meetup and Android GDE. She has been in the mobile development space since 2010 and had a lot of hands on experience helping debug user experiences.

“In the early days, developers cared deeply about user crashes, but they didn’t have the tools to replicate or debug the issue, or to understand which users were being impacted. I remember spending lots of time trying to reproduce issues based on minimal information from bug reports.

One time I remember attempting to debug an experience only happening in a specific country, and no matter how many times I tried, I was unable to reproduce it. It wasn’t until I traveled there in person, I realized people were often using 2G. It never dawned on me to check the connection type!” -Annyce Davis

moving image of Annyce Davis, VP of Engineering at Meetup and Android GDE during the App Quality Insights segment of #TheAndroidShow


Firebase Crashlytics Changes the Game

Crashlytics was introduced in 2011 and it has helped developers track, prioritize, and fix app crashes faster. Annyce told me this was a game changer for crash management.

Moving image of text reads 'Crashlytics helps developers track, prioritize, and fix crashes faster'

“We could now know which devices were experiencing issues, could be notified of trending issues, and finally we were able to show non-technical stakeholders crashes visually, to create buy-in for urgent work.

My team received crash reports for a particular screen of the Meetup app, but we could never reproduce the issue given how inconsistent it was. First, Crashlytics helped us narrow down which feature to examine. We found a crash that was due to a null pointer exception on data that we never expected to be null, so it didn’t seem like the crash could even be possible! An engineer on my team was able to use this data from Crashlytics to uncover that the source was a race condition that would lead to the null, and then he was able to fix it.” -Annyce Davis

What a tricky bug, how fascinating!

Behind the Scenes of AQI

I wanted to learn more about the idea behind AQI, so I chatted with David Motsonashvili, a software engineer on the Firebase team who worked on the initial prototype.

“The original idea for the integration came from a quarterly Hackweek, where we were able to experiment on our own projects. We know Android developers use both Firebase console and Android Studio, so I had an idea to integrate Firebase into Android Studio to reduce their need to switch between the two.

The first prototype for this project was actually an integration with Firebase Performance Monitoring and Android Studio, but we realized Crashlytics would have a much bigger impact on developer workflow as an integration in Android Studio, so we pivoted in that direction instead, and the rest is history!” -David Motsonashvili

Moving stylized image of Android and Firebase logos

I loved that the idea came from wanting to help developers and make our tools easier for them to use! I asked David if he had any fun stories about the project.

“We had to be really scrappy about showing our test app's Crashlytics crash data in the IDE because of limitations we had with the API. It was a really fun project to figure out how to work around this during Hackweek!” -David Motsonashvili

I wanted to better understand how AQI evolved from being an idea during Hackweek, to where it is today.

“Once we launched the early developer preview we tested this with a few internal Google teams, and they loved it! We also started testing this with Android developers as part of an early access program. Some of the companies we talked to were Adobe, Luno, and Meetup. They had really valuable feedback that directly contributed to the roadmap. One example is when we learned many teams needed a place to collaborate within AQI, so we of course moved forward with adding the Crashlytics notes feature into AQI.” -David Motsonashvili

Moving image of quote text reads 'Directly solves one of our big pain points - Adobe Acrobat Reader' and 'Helps keep my finger on the pulse and resolve issues quickly [...] without leaving Android Studio - Maia Grotepass, Luno'


Modern Crash Management

Annyce and her team were early testers of AQI, and it was fun to learn about what they thought of the feature.

“I was truly happy to be able to go directly from a link in the stacktrace to the code. It was the feature in Android Studio that you never knew you needed! I especially like that you can filter issues based on the different variants in your app. Every engineer that I know and work with is passionate about delivering performant, quality code. App Quality Insights is the next step in the evolution of crash management, it can help engineers have more agency over addressing crashes while they also work on exciting new features.” -Annyce Davis

We’ve certainly come a long way with the tools developers have to manage bugs and crashes.

moving image of Annyce Davis, VP of Engineering at Meetup and Android GDE during the App Quality Insights segment of #TheAndroidShow with quote text reads 'It was the feature in Android Studio that you never knew you needed'


Get started with AQI

If you’re ready to try AQI out for yourself, download the latest version of Android Studio. You can also view the documentation, guide on medium, and our demo video to learn more about how to use it.

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.

Unlock seamless gameplay across mobile and PC with Google Play Games

Posted by Arjun Dayal, Director, Google Play Game

Google Play Games on PC gives users the ability to play their favorite mobile games on PC, with the security and stability they expect from Google Play. With a catalog of top-tier games and over 10 billion monthly sessions on mobile, our users have met this product with enthusiasm for its high-quality, high-performance emulation and cross-screen gameplay.

For developers, joining Google Play Games on PC can help you increase user reach, engagement, and ROI and build high-quality games across Google surfaces.
Moving image showing seamless sync across signed-in devices of four varying sizes playing Asphalt 9: Legends
Illustrative example of seamless sync across signed-in devices for Asphalt 9: Legends
Subject to game availability and PC compatibility

At today’s Google for Games Developer Summit, we announced how we’re making cross-platform game development even easier, by continuing to simplify and improve the onboarding process for Google Play Games on PC. Watch our Google Play Games on PC playlist or, keep reading to check the most important updates from today.

Moving image showing Google play Games home page on a desktop monitor
Google Play Games is available to download in 13 countries*. Subject to game availability and PC compatibility

  • Google Play Games on PC is expanding to more regions and including more games loved by billions of users worldwide. The program will be expanding to Japan and countries in Europe in the next couple of months and adding several new games including Garena Free Fire, Ludo King, and MapleStory M.

  • Through our partnership with Intel, we’re making it easier to join Google Play Games on PC with an existing mobile build. While fully optimized games still offer the best experience for users and qualify for unique cross-platform marketing and promotion, we now offer the option to submit your existing mobile build in the meantime to reach players faster. So if your mobile game already plays well on desktop, you can express interest now to join Google Play Games.

  • The new Google Play Games on PC developer emulator is a developer-focused build of Google Play Games specially designed for your debug and build process. It allows you to deploy games directly such as sideloading APKs via adb command or using Android Studio to adjust some graphics and hardware settings to validate different player configurations. To download the emulator, express your interest today.

  • In order to ensure that players have a high-quality experience on Google Play Games, use our new release checklist to verify that you've completed all the necessary steps before submitting a build to ensure a quick approval process. This checklist covers key requirements including using high-resolution textures and assets, supporting Windows aspect ratios, and implementing mouse and keyboard input.

  • With over 2 billion gamer profiles, Play Games Services stands at the core of ensuring seamless continuity across devices for Google Play Games. This year, we will roll out Next Generation Player IDs. These will keep a user's Player ID consistent across surfaces for any given game, while enabling them to be unique across different games.

  • Over the last few years, there’s been a huge push for large-screen devices in the gaming industry, including desktops, laptops, tablets, and foldables. Even though each form factor has its unique advantages, you don’t need to customize your game for each one independently. Check out this session to learn how to ensure great playability across different platforms, all at once.

You can learn more about Google Play Games on PC at the developer site, and watch all the sessions from the Google for Games Developer Summit at g.co/gamedevsummit.


Windows is a trademark of the Microsoft group of companies.
*Google Play Games on PC is available to download in 13 countries as of March 14, 2023. 
Please see g.co/googleplaygames for more information. Game titles may vary by region.

Kakaonavi increased foldable adoption by 24.5% after optimizing its app for large screens

Posted by the Android team

Kakaonavi prides itself on providing fast, accurate routes while offering several other helpful features, including directions to the nearest EV charging stations, car wash order services, navigation data, maintenance reminders, and more. As Korea’s top ranking driving assistant, Kakaonavi wants to make the daily driving experience as easy as possible for its users. Recently, that meant making its services consistent across devices.

With an increasing number of people using large screen and foldable Android devices, Kakaonavi saw a need to evolve its application to optimize the driving experience across all screen shapes and sizes. To do this, the Kakaonavi team focused on establishing a high-quality user experience for large screens by using Android’s latest software features.

Meeting the growing demand for large screens and foldables

Before updating its app, Kakaonavi’s user experience wasn’t tailored for large screens and foldables. The different sizes of devices caused the UI to be displayed improperly on them, which affected the user experience because screen ratio and resolution have a significant impact on usability.

Kakaonavi also recognized that many of its users preferred foldables because they’re easier to position in vehicles, allowing drivers to prop their device on a dashboard or center console. “The reason we decided to focus on foldables is due to the flexible display options provided by them,” said Jaesun Lee, Android developer at Kakaonavi. “Drivers can view the map however they prefer depending on how they fold or unfold the device inside their vehicle.”
ALT TEXTAdditionally, some drivers, including professionals like truck drivers and taxi drivers, use Kakaonavi with three to four other apps simultaneously through Android OS’s split-screen mode. At the time, the Kakaonavi team had only established this type of multi-window supportfor devices with standard resolutions, leading to some of its users experiencing UI issues when trying to run multiple applications at once.

Cohesive experiences across form factors

Developers at Kakaonavi addressed these issues by creating a common UI for large screen and foldable devices. They needed to ensure the UI was consistent whether the device was folded or unfolded, or in portrait or landscape mode. The UI also had to work efficiently while users ran multiple apps on their device’s main display. Because the ability to display map and location information on a larger screen is one of the benefits of these devices, creating consistency across layouts was essential to Kakaonavi’s success.

Using ConstraintLayout, which lets developers create large, complex layouts with a flatter app structure, the Kakaonavi team displayed a uniform, responsive UI regardless of the screen size or ratio. To handle configuration changes that are common on these devices, such as resizing windows or orientation changes, Kakaonavi's developers overrode onConfigurationChanged().

Overriding onConfigurationChanged() ensured the app ran smoothly on all screen sizes and during view mode changes by preventing the system from recreating UI elements triggered by folding and unfolding a device or opening multiple windows. Manually configuring these changes to preserve UI elements, rather than automatically deleting and recreating them, drastically improved the app’s UI performance for these new form factors.

“Since the map and UI state are updated frequently by GPS, we decided that the app would perform better by responding only to changes in screen orientation and screen size with onConfigurationChanged(), rather than restoring the previous state by restarting the Activity,” said Jaesun.

The Kakaonavi team also used multi-resume to enhance the app’s multi-window support for large screens and foldables. Multi-resume lets its users keep multiple applications in an active state while on screen, making multitasking more convenient and reliable.

ALT TEXT

Positive results and expanding opportunities

The number of people using large screen and foldable devices has grown significantly and will continue to grow as more of these devices become available. Currently, there are more than 270 million large screen Android devices in use, including tablets, foldables, and Chrome OS devices.

Kakaonavi has seen this same trend in devices used by its consumers. Since the brand began optimizing its application for large screens in January 2022, its number of monthly active users who use the app on foldables has increased by 24.5%, and the company has received positive feedback from drivers using tablets and foldables as their main source of navigation. As of today, Kakaonavi is optimized for all available tablets and foldables.

The Kakaonavi team is excited by the opportunities these new form factors will bring by giving its users more ways to interact with the app. Looking ahead, the brand plans to further optimize its UI with Jetpack Compose and is already considering how to further tailor its multi-window support to large screens and foldables.

“There will be more devices with various screen sizes and ratios in the future,” said Jaesun. “That’s why we believe it’s important to always provide an optimized UI and meet the needs of consumers’ frequently changing screens.”

Optimize your app for all form factors

Learn how you can optimize your application for large screens and upcoming form factors.

Privacy Week for Android Developers

Posted by Marcel Pinto , Developer Relations Engineer, Android

Android is secure by default and private by design. The platform is focused on bringing the best experiences and latest innovations to users, while keeping them safe by protecting their security and privacy.

But that’s not enough. As Android developers, we have a unique opportunity to shape the privacy landscape for millions of users. With the increasing importance of data privacy, it's crucial for developers to understand the best practices for protecting user information in their apps while providing a great user experience.

During the Privacy Week for Android Developers, we will focus on the steps that you, the developer, can take to ensure that your apps are secure and privacy-conscious. From coding techniques to data storage and management, we'll explore the essential elements of Android privacy that every developer should know. We’ll also highlight several upcoming changes in Android 14.

What to expect this week?

  • Daily new content with guides, tips, and news
  • Guidance regarding the principles of permissions and how to minimize data and location access
  • Updates about Android 14’s privacy-related changes
  • …and more!

Where?

Let’s start?

First, start by bookmarking the new Design For Safety landing page. This redesigned hub will help you navigate through all the changes and quickly find guides, best practices, and policy updates.

design for safety hub screenshot. The section about the Android changes timeline appears in the screenshot.In addition, to make it easier for developers to follow privacy principles, we have created a cheat-sheet for you:
Privacy cheat-sheet for Android Developers
Click to enlarge

For those who like a more hands-on experience, we recently published a new codelab that covers the major privacy topics and how your app can adapt them.

Android Privacy Codelab screenshot showing the steps and the intro page

And last but not least, don’t forget to check our video resources:

With special highlight to:

Stay tuned, there is more to come this week!

Withings reduces 50% of its data sync code by streamlining health and fitness API integrations with Health Connect

Posted by the Android team

French consumer electronics company Withings hosts one of the largest ecosystems of digital health and wellness products in the world. The company’s products include smart watches, smart scales, blood pressure monitors, and its own health-tracking application. Formerly known as Health Mate, the Withings application gives Withings users an easy way to track all of their health information—like activity, weight, ECG records, and sleep—obtained from Withings devices.

While Withings works to create a central hub for its users to access their health-related data, the number of devices and applications for monitoring health has grown substantially. And as health and fitness data spread across multiple platforms, it can be difficult for users to easily track and analyze this information.

To extend access to additional metrics and give Withings users a chance to use the application with their non-Withings apps and devices, Withings integrated Health Connect, Android’s latest API offering that gives users a simpler way to consolidate and share their health and fitness data across applications.

Health data is more powerful together

Before integrating Health Connect, Withings users had to manually activate which health and fitness apps could sync data to and from the Withings app. Now, thanks to Health Connect, its users can grant permissions to new health and fitness applications and automatically sync their data to the Withings app, letting them find their data in one easy-to-manage place.

“We integrated Health Connect in Withings app to grow our health sphere and offer a more complete experience to our users by supporting a wider range of data,” said Sophie Zecri, a mobile software engineer at Withings. “Health Connect helped us create a richer health-tracking interface and a more efficient overview for users.”

By uniting health data using the Health Connect API, Withings application offers its users a more holistic view of their health and makes it easier to develop a deeper understanding of key health insights with the data they gather.

For instance, Withings’ users can now combine their other workout- or calorie-tracking applications with the Withings app. By doing this, users can more easily track how changes in one area of their health may be affecting another. Additionally, the Withings app can provide greater guidance and more specialized programs to meet each user's unique needs, such as specific dietary recommendations and recipes or more specialized exercise programs.

Withings also wanted the data available through the Withings application to be accessible in its users' other health and fitness apps. Integrating with Health Connect made this possible. “We wanted to extend access to additional metrics, giving our users a chance to use Withings devices with their other applications,” said Sophie.

Ensuring that users felt in control of their data was also a top priority for the Withings team. They saw Health Connect as a powerful tool that’s equally secure for both Withings and its users. With Health Connect, users can easily manage permissions in one place, with granular controls to see which apps are accessing data at any given time. And for Withings, setting up permission checks was as easy as dropping in a simple piece of code provided by Health Connect.

Simplify connectivity between apps with Health Connect

The amount of work required to connect with other third-party health and fitness applications was Withings’ biggest roadblock to giving its users access to additional syncs. All the APIs for every other app, with all their unique code, made integrations complex and expensive for Withings to maintain.

“Connecting with other apps’ APIs was onerous. Any changes had to be repeated for every API, which meant expanding the codebase and increasing the risk of bugs that could impact Withings app’s quality,” said Sophie.

Health Connect lets Withings developers maintain less code while preserving stability and minimizing potential bugs. This translates to a reduced codebase and increased productivity for other projects. By integrating Health Connect with the Withings app, Withings reduced the amount of code related to data sync with third-party applications by 50%.

Headshot of Sophie Zecri, Mobile Software Engineer at Withings, with quote, 'Integrating Health Connect was really rewarding for us. We're thrilled we can enrich the user experience by generating true synergy, letting users  dive deeper into the details of their health aspects.'

Preparing for a future with Health Connect

The Withings team attributes much of its success to the available Android resources for developers looking to integrate Health Connect with their company’s app. Withings developers used the Health Connect UX developer guide to aid the integration, and they used the Health Connect toolbox for testing and to understand how Withings app behaves with other applications that have integrated Health Connect.

The Withings team is excited to support new data types as its product range grows and new biomarker measurements become available. Currently, the company plans to expand its use of Health Connect by adding more data types related to women’s health.

“I would recommend Health Connect to other engineers looking to unite data for its users,” said Sophie. “Health Connect is a powerful, interesting, and easy tool to use.”

Join the many other apps using Health Connect today

Streamline integrations with other health and fitness apps while providing your users with deeper health insights using Health Connect.

Get started by viewing Android’s Introduction to Health Connect. Then, head over to the Health Connect Codelab and learn how you can integrate the Health Connect API today.

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

#WeArePlay | Meet Ania from Canada. More stories from USA, Australia and Montenegro

Posted by Leticia Lago, Developer Marketing

This International Women’s Day, we’re dedicating our latest #WeArePlay stories to the inspirational women founders creating apps and games businesses on Google Play. Like Ania from Victoria in Canada, who is making mental health support more accessible worldwide.

When Ania was a student, she started experiencing debilitating panic attacks. Realizing there wasn’t much help readily available on mobile, she took it upon herself to do her own research and learn how to manage her anxiety. After feeling more confident again, she wanted to share what she had learned and help people, so began developing Rootd.

The app provides in-the-moment relief: with lessons to understand panic attacks, breathing exercises, and ways to make short-term and long-term changes to reduce anxiety. She is growing the app’s reach by expanding to different countries, with the hope it will eventually become one of the most widely used tools to overcome panic attacks in the world.

Celebrating more women founders

Alongside Ania, there are many other women founders doing incredible work in the apps and games space: like Bria from USA - founder of Honey B Games and creator of bubble tea game Boba Story, Lauren and Christina from Australia - co-founders of Lumi Interactive and their wellbeing app Kinder World: Cozy Plants, and Jelena from Montenegro - CEO of games studio 3Hills.

Check out their stories now at g.co/play/weareplay.


How useful did you find this blog post?

Android 14 Developer Preview 2

Posted by Dave Burke, VP of Engineering

Today, we're releasing the second Developer Preview of Android 14, building on the work of the first developer preview of Android 14 from last month with additional enhancements to privacy, security, performance, developer productivity, and user customization while continuing to refine the large-screen device experience on tablets, foldables, and more.

Android delivers enhancements and new features year-round, and your feedback on the Android 14 developer preview and Quarterly Platform Release (QPR) beta program plays a key role in helping Android continuously improve. The Android 14 developer site has lots more information about the preview, including downloads for Pixel and the release timeline. We’re looking forward to hearing what you think, and thank you in advance for your continued help in making Android a platform that works for everyone.

Working across form factors

Android 14 builds on the work done in Android 12L and 13 to support tablets and foldable form factors. See get started with building for large screens and learn about foldables for a quick jumpstart on how to get your apps ready. Our app quality guidance for large screens contains detailed checklists to review your app. We've also recently released libraries supporting low latency stylus and motion prediction.

The large screen gallery contains design inspiration for social and communications, media, productivity, shopping, and reading app experiences.

Privacy and security

Privacy and security have always been a core part of Android's mission, built on the foundation of app sandboxing, open source code, and open app development. In Android 14, we’re building the highest quality platform for all by providing a safer device environment and giving users more controls to protect their information.

Selected photos access

We recommend that you use the Photo Picker if your app needs to access media that the user selects; it provides a permissionless experience on devices running Android 4.4 onwards, using a combination of core platform features, Google Play system updates, and Google Play services.

If you cannot use Photo Picker, when your app requests any of the visual media permissions (READ_MEDIA_IMAGES / READ_MEDIA_VIDEO) introduced in SDK 33, Android 14 users can now grant your app access to only selected photos and videos.

In the new dialog, the permission choices will be:

  • Allow access to all photos: the full library of all on-device photos & videos is available
  • Select photos: only the user's selection of photos & videos will be temporarily available via MediaStore
  • Don’t allow: access to all photos and videos is denied

Apps can prompt users to select media again by requesting the media permissions again and having the READ_MEDIA_VISUAL_USER_SELECTED permission declared in their app manifest.

Please test this new behavior with your apps and adapt your UX to handle the new permission and the media file reselection flow.

Credential manager

Android 14 adds Credential Manager as a platform API, and we're supporting it back to Android 4.4 (API level 19) devices through a Jetpack Library with a Google Play services implementation. It aims to make sign-in easier for users with APIs that retrieve and store credentials with user-configured credential providers. In addition to supporting passwords, the API allows your app to sign-in using passkeys, the new industry standard for passwordless sign-in. Passkeys are built on industry standards, can work across different operating systems and browser ecosystems, and can be used with both websites and apps. Developer Preview 2 features improvements in the UI styling for the account selector, along with changes to the API based upon feedback from Developer Preview 1. Learn more here.

Safer implicit intents

For apps targeting Android 14, creating a mutable pending intent with an implicit intent will throw an exception, preventing them from being able to be used to trigger unexpected code paths. Apps need to either make the pending intent immutable or make the intent explicit. Learn more here.

Background activity launching

Android 10 (API level 29) and higher place restrictions on when apps can start activities when the app is running in the background. These restrictions help minimize interruptions for the user and keep them more in control of what's shown on their screen. To further reduce instances of unexpected interruptions, Android 14 gives foreground apps more control over the ability of apps they interact with to start activities. Specifically, apps targeting Android 14 need to grant privileges to start activities in the background when sending a PendingIntent or when binding a Service.

Streamlining background work

Android 14 continues our effort to optimize the way apps work together, improve system health and battery life, and polish the end-user experience.

Background optimizations

Developer Preview 2 includes optimizations to Android’s memory management system to improve resource usage while applications are running in the background. Several seconds after an app goes into the cached state, background work is disallowed outside of conventional Android app lifecycle APIs such as foreground services, JobScheduler, or WorkManager. Background work is disallowed an order of magnitude faster than on Android 13.

Fewer non-dismissible notifications

Notifications on Android 14 containing FLAG_ONGOING_EVENT will be user dismissible on unlocked handheld devices. Notifications will stay non-dismissible when the device is locked, and notification listeners will not be able to dismiss these notifications. Notifications that are important to device functionality, like system and device policy notifications, will remain fully non-dismissible.

Improved App Store Experiences

Android 14 introduces several new PackageInstaller APIs which allow app stores to improve their user experience, including the requestUserPreapproval() method that allows the download of APKs to be deferred until after the installation has been approved, the setRequestUpdateOwnership() method that allows an installer to indicate that it is responsible for future updates to an app it is installing, and the setDontKillApp() method that can seamlessly install optional features of an app through split APKs while the app is in use. Also, the InstallConstraints API gives installers a way to ensure that app updates happen at an opportune moment, such as when an app is no longer in use.

If you develop an app store, please give these APIs a try and let us know what you think!

Personalization

Regional Preferences

Regional preferences enable users to personalize temperature units, the first day of the week, and numbering systems. A European living in the United States might prefer temperature units to be in Celsius rather than Fahrenheit and for apps to treat Monday as the beginning of the week instead of the US default of Sunday.

New Android Settings menus for these preferences provide users with a discoverable and centralized location to change app preferences. These preferences also persist through backup and restore. Several APIs and intents grant you read access to user preferences for adjusting app information display (getTemperatureUnit, getFirstDayOfWeek). You can also register a BroadcastReceiver on ACTION_LOCALE_CHANGED to handle locale configuration changes when regional preferences change.

App compatibility

We’re working to make updates faster and smoother with each platform release by prioritizing app compatibility. In Android 14 we’ve made most app-facing changes opt-in to give you more time to make any necessary app changes, and we’ve updated our tools and processes to help you get ready sooner.

Developer Preview 2 is in the period where we're looking for input on our APIs, along with details on how platform changes affect your apps, so now is the time to try new features and give us your feedback.

It’s also a good time to start your compatibility testing and identify any work you’ll need to do. You can test some of them without changing your app's targetSdkVersion using the behavior change toggles in Developer Options. This will help you get a preliminary idea of how your app might be affected by opt-in changes in Android 14.

Image of a partial screen shot of a device showing App compatibility toggles in Developer Options
App compatibility toggles in Developer Options.

Platform Stability is when we’ll deliver final SDK/NDK APIs and app-facing system behaviors. We’re expecting to reach Platform Stability in June 2023, and from that time you’ll have several weeks before the official release to do your final testing. The release timeline details are here.

Get started with Android 14

The Developer Preview has everything you need to try the Android 14 features, test your apps, and give us feedback. For testing your app with tablets and foldables, the easiest way to get started is using the Android Emulator in a tablet or foldable configuration in the latest preview of the Android Studio SDK Manager. For phones, you can get started today by flashing a system image onto a Pixel 7 Pro, Pixel 7, Pixel 6a, Pixel 6 Pro, Pixel 6, Pixel 5a 5G, Pixel 5, or Pixel 4a (5G) device. If you don’t have a Pixel device, you can use the 64-bit system images with the Android Emulator in Android Studio.

For the best development experience with Android 14, we recommend that you use the latest preview of Android Studio Giraffe (or more recent Giraffe+ versions). Once you’re set up, here are some of the things you should do:

  • Try the new features and APIs - your feedback is critical during the early part of the developer preview. Report issues in our tracker on the feedback page.
  • Test your current app for compatibility - learn whether your app is affected by default behavior changes in Android 14; install your app onto a device or emulator running Android 14 and extensively test it.
  • Test your app with opt-in changes - Android 14 has opt-in behavior changes that only affect your app when it’s targeting the new platform. It’s important to understand and assess these changes early. To make it easier to test, you can toggle the changes on and off individually.

We’ll update the preview system images and SDK regularly throughout the Android 14 release cycle. This preview release is for developers only and not intended for daily or consumer use, so it will only available by manual download for new Android 14 developer preview users. Once you’ve manually installed a preview build, you’ll automatically get future updates over-the-air for all later previews and Betas. Read more here.

If you intend to move from the Android 13 QPR Beta program to the Android 14 Developer Preview program and don't want to have to wipe your device, we recommend that you move to Developer Preview 2 now. Otherwise, you may run into time periods where the Android 13 Beta will have a more recent build date which will prevent you from going directly to the Android 14 Developer Preview without doing a data wipe.

As we reach our Beta releases, we'll be inviting consumers to try Android 14 as well, and we'll open up enrollment for the Android 14 Beta program at that time. For now, please note that the Android Beta program is not yet available for Android 14.

For complete information, visit the Android 14 developer site.

Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.