Tag Archives: Android

Prioritize media privacy with Android Photo Picker and build user trust

Posted by Tatiana van Maaren – Global T&S Partnerships Lead, Privacy & Security, and Roxanna Aliabadi Walker – Product Manager

At Google Play, we're dedicated to building user trust, especially when it comes to sensitive permissions and your data. We understand that managing files and media permissions can be confusing, and users often worry about which files apps can access. Since these files often contain sensitive information like family photos or financial documents, it's crucial that users feel in control. That’s why we're working to provide clearer choices, so users can confidently grant permissions without sacrificing app functionality or their privacy.

Below are a set of best practices to consider for improving user trust in the sharing of broad access files, ultimately leading to a more successful and sustainable app ecosystem.

Prioritize user privacy with data minimization

Building user trust starts with requesting only the permissions essential for your app's core functions. We understand that photos and videos are sensitive data, and broad access increases security risks. That's why Google Play now restricts READ_MEDIA_IMAGES and READ_MEDIA_VIDEO permissions, allowing developers to request them only when absolutely necessary, typically for apps like photo/video managers and galleries.

Leverage privacy-friendly solutions

Instead of requesting broad storage access, we encourage developers to use the Android Photo Picker, introduced in Android 13. This tool offers a privacy-centric way for users to select specific media files without granting access to their entire library. Android photo picker provides an intuitive interface, including access to cloud-backed photos and videos, and allows for customization to fit your app's needs. In addition, this system picker is backported to Android 4.4, ensuring a consistent experience for all users. By eliminating runtime permissions, Android photo picker simplifies the user experience and builds trust through transparency.

Build trust through transparent data practices

We understand that some developers have historically used custom photo pickers for tailored user experiences. However, regardless of whether you use a custom or system picker, transparency with users is crucial. Users want to know why your app needs access to their photos and videos.

Developers should strive to provide clear and concise explanations within their apps, ideally at the point where the permission is requested. Take the following in consideration while crafting your permission request mechanisms as possible best practices guidelines:

    • When requesting media access, provide clear explanations within your app. Specifically, tell users which media your app needs (e.g., all photos, profile pictures, sharing videos) and explain the functionality that relies on it (e.g., 'To choose a profile picture,' 'To share videos with friends').
    • Clearly outline how user data will be used and protected in your privacy policies. Explain whether data is stored locally, transmitted to a server, or shared with third parties. Reassure users that their data will be handled responsibly and securely.

Learn how Snap has embraced the Android System Picker to prioritize user privacy and streamline their media selection experience. Here's what they have to say about their implementation:

A grid of photos in the photo library is shown on a smartphone screen, including a waterfall and two people smiling and posing for the camera. The Google Photos interface is at the top, with the Photos tab selected, and one photo from the grid is selected for use

“One of our goals is to provide a seamless and intuitive communication experience while ensuring Snapchatters have control over their content. The new flow of the Android Photo Picker is the perfect balance of providing user control of the content they want to share while ensuring fast communication with friends on Snapchat.”
Marc Brown, Product Manager

Get started

Start building a more trustworthy app experience. Explore the Android Photo Picker and implement privacy-first data practices today.


Acknowledgement

Special thanks to: May Smith – Product Manager, and Anita Issagholyan – Senior Policy Specialist

Gemini in Android Studio for businesses: Develop with confidence, powered by AI

Posted by Sandhya Mohan – Product Manager

To empower Android developers at work, we’re excited to announce a new offering of Gemini in Android Studio for businesses. This offering is specifically designed to meet the added privacy, security, and management needs of small and large organizations. We’ve heard that some people at businesses have additional needs that require more sensitive data protection, and this offering delivers the same Gemini in Android Studio that you've grown accustomed to, now with the additional privacy enhancements that your organization might require.

Developers and admins can unlock these features and benefits by subscribing to Gemini Code Assist Standard or Enterprise editions. A Google Cloud administrator can purchase a subscription and assign licenses to developers in their organization directly from the Google Cloud console.

Your code stays secure

Our data governance policy helps ensure customer code, customers' inputs, as well as the recommendations generated will not be used to train any shared models. Customers control and own their data and IP. It also comes with security features like Private Google Access, VPC Service Controls, and Enterprise Access Controls with granular IAM permissions to help enterprises adopt AI assistance at scale without compromising on security and privacy. Using a Gemini Code Assist Standard or Enterprise license enables multiple industry certifications such as:

    • SOC 1/2/3, ISO/IEC 27001 (Information Security Management)
    • 27017 (Cloud Security)
    • 27018 (Protection of PII)
    • 27701 (Privacy Information Management)

More details are at Certifications and security for Gemini.

IP indemnification

Organizations will benefit from generative AI IP indemnification, safeguarding their organizations against third parties claiming copyright infringement related to the AI-generated code. This added layer of protection is the same indemnification policy we provide to Google Cloud customers using our generative AI APIs, and allows developers to leverage the power of AI with greater confidence and reduced risk.

Code customization

Developers with a Code Assist Enterprise license can get tailored assistance customized to their organization’s codebases by connecting to their GitHub, GitLab or BitBucket repositories (including on-premise installations), giving Gemini in Android Studio awareness of the classes and methods their team is most likely to use. This allows Gemini to tailor code completion suggestions, code generations, and chat responses to their business's best practices, and save developers time they would otherwise have to spend integrating with their company's preferred frameworks.

Designed for Android development

As always, we've designed Gemini in Android Studio with the unique needs of Android developers in mind, offering tailored assistance at every stage of the software development lifecycle. From the initial phases of writing, refactoring, and documenting your code, Gemini acts as an intelligent coding companion to boost productivity. With features like:

    • Build & Sync error support: Get targeted insights to help solve build and sync errors
screenshot of build and sync error support by Gemini in Android Studio

    • Gemini-powered App Quality Insights: Analyze crashes reported by Google Play Console and Firebase Crashlytics
screenshot of app quality insights by Gemini in Android Studio

    • Get help with Logcat crashes: Simply click on “Ask Gemini” to get a contextual response on how to resolve the crash.
screenshot of getting contextual responses on how to resolve a crash from by Gemini in Android Studio

In Android Studio, Gemini is designed specifically for the Android ecosystem, making it an invaluable tool throughout the entire journey of creating and publishing an Android app.

Check out Gemini in Android Studio for business

This offering for businesses marks a significant step forward in empowering Android development teams with the power of AI. With this subscription-based offering, no code is stored, and crucially, your code is never used for model training. By providing generative AI indemnification and robust enterprise management tools, we're enabling organizations to innovate faster and build high-quality Android applications with confidence.

Ready to get started? Here’s what you need

To get started, you'll need a Gemini Code Assist Enterprise license and Android Studio Narwhal or Android Studio for Platform found on the canary release channel. Purchase your Gemini Code Assist license or contact a Google Cloud sales team today for a personalized consultation on how you can unlock the power of AI for your organization.

Note: Gemini for businesses is also available for Android Studio Platform users.

We appreciate any feedback on things you like or features you would like to see. If you find a bug, please report the issue and also check out known issues. Remember to also follow us on X, LinkedIn, Blog, or YouTube for more Android development updates!

Widgets Take Center Stage with One UI 7

Posted by André Labonté – Senior Product Manager, Android Widgets

On April 7th, Samsung will begin rolling out One UI 7 to more devices globally. Included in this bold new design is greater personalization with an optimized widget experience and updated set of One UI 7 widgets. Ushering in a new era where widgets are more prominent to users, and integral to the daily device experience.

This update presents a prime opportunity for Android developers to enhance their app experience with a widget

    • More Visibility: Widgets put your brand and key features front and center on the user's device, so they're more likely to see it.
    • Better User Engagement: By giving users quick access to important features, widgets encourage them to use your app more often.
    • Increased Conversions: You can use widgets to recommend personalized content or promote premium features, which could lead to more conversions.
    • Happier Users Who Stick Around: Easy access to app content and features through widgets can lead to overall better user experience, and contribute to retention.

More discoverable than ever with Google Play’s Widget Discovery features!

    • Dedicated Widgets Search Filter: Users can now directly search for apps with widgets using a dedicated filter on Google Play. This means your apps/games with widgets will be easily identified, helping drive targeted downloads and engagement.
    • New Widget Badges on App Detail Pages: We’ve introduced a visual badge on your app’s detail pages to clearly indicate the presence of widgets. This eliminates guesswork for users and highlights your widget offerings, encouraging them to explore and utilize this capability.
    • Curated Widgets Editorial Page: We're actively educating users on the value of widgets through a new editorial page. This curated space showcases collections of excellent widgets and promotes the apps that leverage them. This provides an additional channel for your widgets to gain visibility and reach a wider audience.

Getting started with Widgets

Whether you are planning a new widget, or investing in an update to an existing widget, we have tools to help!

    • Quality Tiers are a great starting point to understand what makes a great Android widget. Consider making your widget resizable to the recommended sizes, so users can customize the size just right for them.

Leverage widgets for increased app visibility, enhanced user engagement, and ultimately, higher conversions. By embracing widgets, you're not just optimizing for a specific OS update; you're aligning with a broader trend towards user-centric, glanceable experiences.

Media3 1.6.0 — what’s new?

Posted by Andrew Lewis – Software Engineer

This article is cross-published on Medium

Media3 1.6.0 is now available!

This release includes a host of bug fixes, performance improvements and new features. Read on to find out more, and as always please check out the full release notes for a comprehensive overview of changes in this release.


Playback, MediaSession and UI

ExoPlayer now supports HLS interstitials for ad insertion in HLS streams. To play these ads using ExoPlayer's built-in playlist support, pass an HlsInterstitialsAdsLoader.AdsMediaSourceFactory as the media source factory when creating the player. For more information see the official documentation.

This release also includes experimental support for 'pre-warming' decoders. Without pre-warming, transitions from one playlist item to the next may not be seamless in some cases, for example, we may need to switch codecs, or decode some video frames to reach the start position of the new media item. With pre-warming enabled, a secondary video renderer can start decoding the new media item earlier, giving near-seamless transitions. You can try this feature out by enabling it on the DefaultRenderersFactory. We're actively working on further improvements to the way we interact with decoders, including adding a 'fast seeking mode' so stay tuned for updates in this area.

Media3 1.6.0 introduces a new media3-ui-compose module that contains functionality for building Compose UIs for playback. You can find a reference implementation in the Media3 Compose demo and learn more in Getting started with Compose-based UI. At this point we're providing a first set of foundational state classes that link to the Player, in addition to some basic composable building blocks. You can use these to build your own customized UI widgets. We plan to publish default Material-themed composables in a later release.

Some other improvements in this release include: moving system calls off the application's main thread to the background (which should reduce ANRs), a new decoder module wrapping libmpegh (for bundling object-based audio decoding in your app), and a fix for the Cast extension for apps targeting API 34+. There are also fixes across MPEG-TS and WebVTT extraction, DRM, downloading/caching, MediaSession and more.

Media extraction and frame retrieval

The new MediaExtractorCompat is a drop-in replacement for the framework MediaExtractor but implemented using Media3's extractors. If you're using the Android framework MediaExtractor, consider migrating to get consistent behavior across devices and reduce crashes.

We've also added experimental support for retrieving video frames in a new class ExperimentalFrameExtractor, which can act as a replacement for the MediaMetadataRetriever getFrameAtTime methods. There are a few benefits over the framework implementation: HDR input is supported (by default tonemapping down to SDR, but with the option to produce HLG bitmaps from Android 14 onwards), Media3 effects can be applied (including Presentation to scale the output to a desired size) and it runs faster on some devices due to moving color space conversion to the GPU. Here's an example of using the new API:

val bitmap =
    withContext(Dispatchers.IO) {
        val configuration =
            ExperimentalFrameExtractor.Configuration
                .Builder()
                .setExtractHdrFrames(true)
                .build()
        val frameExtractor =
            ExperimentalFrameExtractor(
                context,
                configuration,
            )

        frameExtractor.setMediaItem(mediaItem, /*effects*/ listOf())

        val frame = frameExtractor.getFrame(timestamps).await()
        frameExtractor.release()
        frame.bitmap
    }

Editing, transcoding and export

Media3 1.6.0 includes performance, stability and functional improvements in Transformer. Highlights include: support for transcoding/transmuxing Dolby Vision streams on devices that support this format and a new MediaProjectionAssetLoader for recording from the screen, which you can try out in the Transformer demo app.

Check out Common media processing operations with Jetpack Media3 Transformer for some code snippets showing how to process media with Transformer, and tips to reduce latency.

This release also includes a new Kotlin-based demo app showcasing Media3's video effects framework. You can select from a variety of video effects and preview them via ExoPlayer.setVideoEffects.

Media3 video effect animation
Animation showing contrast adjustment and a confetti effect in the new demo app

Get started sith Media3 1.6.0

Please get in touch via the Media3 issue Tracker if you run into any bugs, or if you have questions or feature requests. We look forward to hearing from you!

Strengthening Our App Ecosystem: Enhanced Tools for Secure & Efficient Development

Posted by Suzanne Frey – VP, Product, Trust & Growth for Android & Play

Knowing that you’re building on a safe, secure ecosystem is essential for any app developer. We continuously invest in protecting Android and Google Play, so millions of users around the world can trust the apps they download and you can build thriving businesses. And we’re dedicated to continually improving our developer tools to make world–class security even easier to implement.

Together, we’ve made Google Play one of the safest and most secure platforms for developers and users. Our partnership over the past few years includes helping you:

Today, we’re excited to share more about how we're making it easier than ever for developers to build safe apps, while also continuing to strengthen our ecosystem's protection in 2025 and beyond.

Making it easier for you to build safer apps from the start

Google Play’s policies are a critical component of ensuring a safe experience for our shared users. Play Console pre-review checks are a great way to resolve certain policy and compatibility issues before you submit your app for review. We recently added the ability to check privacy policy links and login credential requirements, and we’re launching even more pre-review checks this year to help you avoid common policy pitfalls.

To help you avoid policy complications before you submit apps for review, we’ve been notifying you earlier about certain policies relevant to your apps – starting right as you code in Android Studio. We currently notify developers through Android Studio about a few key policy areas, but this year we’ll expand to a much wider range of policies.

Providing more policy support

Acting on your feedback, we’ve improved our policy experience to give you clearer updates, more time for substantial changes, more flexible requirements while still maintaining safety standards, and more helpful information with live Q&A's. Soon, we’ll be trying a new way of communicating with you in Play Console so you get information when you need it most. This year, we’re investing in even more ways to get your feedback, help you understand our policies, navigate our Policy Center, and help to fix issues before app submission through new features in Console and Android Studio.

We’re also expanding our popular Google Play Developer Help Community, which saw 2.7 million visits last year from developers looking to find answers to policy questions, share knowledge, and connect with fellow developers. This year, we’re planning to expand the community to include more languages, such as Indonesian, Japanese, Korean, and Portuguese.

Protecting your business and users from scams and attacks

The Play Integrity API is an essential tool to help protect your business from abuse such as fraud, bots, cheating, and data theft. Developers are already using the APIs to make over 500M daily checks for potentially fraudulent or risky behavior. In fact, apps that use Play Integrity features to detect suspicious activity are seeing an 80% drop in unauthorized usage on average compared to other apps.

Developers are using Play Integrity API's new app access risk detection to make over 500M daily checks for potentially fraudulent or risky behavior, and apps that use the Play Integrity API are seeing 80% lower usage from unverified, untrusted sources on average.

This year, we’ll continue to enhance the Play Integrity API with stronger protection for even more users. We recently improved the technology that powers the API on all devices running Android 13 (API level 33) and above, making it faster, more reliable, and more private for users. We also launched enhanced security signals to help you decide how much you trust the environment your app is running in, which we’ll automatically roll out to all developers who use the API in May. You can opt in now to start using the improved verdicts today.

We’ll be adding new features later this year to help you deal with emerging threats, such as the ability to re-identify abusive and risky devices in a way that also preserves user privacy. We’re also building more tools to help you guide users to fix issues, like if they need a security update or they’re using a tampered version of your app.

Providing additional validation for your app

For apps in select categories, we offer badges that provide an extra layer of validation and connect users with safe, high-quality, and useful experiences. Building on the work of last year’s “Government” badge, which helps users identify official government apps, this year we introduced a “Verified” badge to help users discover VPN apps that take extra steps to demonstrate their commitment to security. We’ll continue to expand on this and add badges to more app categories in the future.

Partnering to keep kids safe

Whether your app is specifically designed for kids or simply attracts their attention, there is an added responsibility to ensure a safe and trusted experience. We want to partner with you to keep kids and teens safe online, and protect their privacy, and empower families. In addition to Google Play’s Teacher Approved program, Families policies, and tools like Restrict Declared Minors setting within the Google Play Console, we’re building tools like Credential Manager API, now in Beta for Digital IDs.

Strengthening the Android ecosystem

In addition to helping developers build stronger, safer apps on Google Play, we remain committed to protecting the broader Android ecosystem. Last year, our investments in stronger privacy policies, AI-powered threat detection and other security measures prevented 2.36 million policy-violating apps from being published on Google Play. By contrast, our most recent analysis found over 50 times more Android malware from Internet-sideloaded sources (like browsers and messaging apps) than on Google Play. This year we’re working on ways to make it even harder for malicious actors to hide or trick users into harmful installs, which will not only protect your business from fraud but also help users download your apps with confidence.

Our most recent analysis found over 50 times more Android malware from Internet-sideloaded sources than on Google Play

Meanwhile, Google Play Protect is always evolving to combat new threats and protect users from harmful apps that can lead to scams and fraud. As this is a core part of user safety, we’re doing more to keep users from being socially-engineered by scammers to turn this off. First, Google Play Protect live threat detection is expanding its protection to target malicious applications that try to impersonate financial apps. And our enhanced financial fraud protection pilot has continued to expand after a successful launch in select countries where we saw malware based financial fraud coming from Internet-sideloaded sources. We are planning to expand the pilot throughout this year to additional countries where we have seen higher levels of malware-based financial fraud.

We’re even working with other leaders across the industry to protect all users, no matter what device they use or where they download their apps. As a founding member of the App Defense Alliance, we’re working to establish and promote industry-wide security standards for mobile and web applications, as well as cloud configurations. Recently, the ADA launched Application Security Assessments (ASA) v1.0, which provides clear guidance to developers on protecting sensitive data and defending against cyber attacks to strengthen user trust.

What's next

Please keep the feedback coming! We appreciate knowing what can make our developers’ experiences more efficient while ensuring we maintain the highest standards in app safety. Thank you for your continued partnership in making Android and Google Play a safe, thriving platform for everyone.

#WeArePlay | How Memory Lane Games helps people with dementia

Posted by Robbie McLachlan – Developer Marketing

In our latest #WeArePlay film, which celebrates the people behind apps and games, we meet Bruce - a co-founder of Memory Lane Games. His company turns cherished memories into simple, engaging quizzes for people with different types of dementia. Discover how Memory Lane Games blends nostalgia and technology to spark conversations and emotional connections.


What inspired the idea behind Memory Lane Games?

The idea for Memory Lane Games came about one day at the pub when Peter was telling me how his mum, even with vascular dementia, lights up when she looks at old family photos. It got me thinking about my own mum, who treasures old photos just as much. The idea hit us – why not turn those memories into games? We wanted to help people reconnect with their past and create moments where conversations could flow naturally.

Memory Lane Games co-founders, Peter and Bruce from Isle of Man

Can you tell us of a memorable moment in the journey when you realized how powerful the game was?

We knew we were onto something meaningful when a caregiver in a memory cafe told us about a man who was pretty much non-verbal but would enjoy playing. He started humming along to one of our music trivia games, then suddenly said, "Roy Orbison is a way better singer than Elvis, but Elvis had a better manager." The caregiver was in tears—it was the first complete sentence he’d spoken in months. Moments like these remind us why we’re doing this—it’s not just about games; it’s about unlocking moments of connection and joy that dementia often takes away.

A user plays Memory Lane Games from their phone

One of the key features is having errorless fun with the games, why was that so important?

We strive for frustration-free design. With our games, there are no wrong answers—just gentle prompts to trigger memories and spark conversations about topics they are interested in. It’s not about winning or losing; it’s about rekindling connections and creating moments of happiness without any pressure or frustration. Dementia can make day-to-day tasks challenging, and the last thing anyone needs is a game that highlights what they might not remember or get right. Caregivers also like being able to redirect attention back to something familiar and fun when behaviour gets more challenging.

How has Google Play helped your journey?

What’s been amazing is how Google Play has connected us with an incredibly active and engaged global community without any major marketing efforts on our part.

For instance, we got our first big traction in places like the Philippines and India—places we hadn’t specifically targeted. Yet here we are, with thousands of downloads in more than 100 countries. That reach wouldn’t have been possible without Google Play.

A group of senior citizen gather around a table to play a round of Memory Lane Games from a shared mobile device

What is next for Memory Lane Game?

We’re really excited about how we can use AI to take Memory Lane Games to the next level. Our goal is to use generative AI, like Google’s Gemini, to create more personalized and localized game content. For example, instead of just focusing on general memories, we want to tailor the game to a specific village the player came from, or a TV show they used to watch, or even local landmarks from their family’s hometown. AI will help us offer games that are deeply personal. Plus, with the power of AI, we can create games in multiple languages, tapping into new regions like Japan, Nigeria or Mexico.

Discover other inspiring app and game founders featured in #WeArePlay.



How useful did you find this blog post?

The Third Beta of Android 16

Posted by Matthew McCullough – VP of Product Management, Android Developer

Android 16 has officially reached Platform Stability today with Beta 3! That means the API surface is locked, the app-facing behaviors are final, and you can push your Android 16-targeted apps to the Play store right now. Read on for coverage of new security and accessibility features in Beta 3.

Android delivers enhancements and new features year-round, and your feedback on the Android beta program plays a key role in helping Android continuously improve. The Android 16 developer site has more information about the beta, including how to get it onto devices 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 benefits everyone.

New in Android 16 Beta 3

At this late stage in the development cycle, there are only a few new things in the Android 16 Beta 3 release for you to consider when developing your apps.

Android 16 timeline showing we are on time with Beta releases ending in March

Broadcast audio support

Pixel 9 devices on Android 16 Beta now support Auracast broadcast audio with compatible LE Audio hearing aids, part of Android's work to enhance audio accessibility. Built on the LE Audio standard, Auracast enables compatible hearing aids and earbuds to receive direct audio streams from public venues like airports, concerts, and classrooms. Our Keyword post has more on this technology.

Outline text for maximum text contrast

Users with low vision often have reduced contrast sensitivity, making it challenging to distinguish objects from their backgrounds. To help these users, Android 16 Beta 3 introduces outline text, replacing high contrast text, which draws a larger contrasting area around text to greatly improve legibility.

Android 16 also contains new AccessibilityManager APIs to allow your apps to check or register a listener to see if this mode is enabled. This is primarily for UI Toolkits like Compose to offer a similar visual experience. If you maintain a UI Toolkit library or your app performs custom text rendering that bypasses the android.text.Layout class then you can use this to know when outline text is enabled.

Text with enhanced contrast before and after Android 16's new outline text accessibility feature
Text with enhanced contrast before and after Android 16's new outline text accessibility feature

Test your app with Local Network Protection

Android 16 Beta 3 adds the ability to test the Local Network Protection (LNP) feature which is planned for a future Android major release. It gives users more control over which apps can access devices on their local network.

What's Changing?

Currently, any app with the INTERNET permission can communicate with devices on the user's local network. LNP will eventually require apps to request a specific permission to access the local network.

Beta 3: Opt-In and Test

In Beta 3, LNP is an opt-in feature. This is your chance to test your app and identify any parts that rely on local network access. Use this adb command to enable LNP restrictions for your app:

adb shell am compat enable RESTRICT_LOCAL_NETWORK <your_package_name>

After rebooting your device, your app's local network access is restricted. Test features that might interact with local devices (e.g., device discovery, media casting, connecting to IoT devices). Expect to see socket errors like EPERM or ECONNABORTED if your app tries to access the local network without the necessary permission. See the developer guide for more information, including how to re-enable local network access.

This is a significant change, and we're committed to working with you to ensure a smooth transition. By testing and providing feedback now, you can help us build a more private and secure Android ecosystem.

Get your apps, libraries, tools, and game engines ready!

If you develop an SDK, library, tool, or game engine, it's even more important to prepare any necessary updates now to prevent your downstream app and game developers from being blocked by compatibility issues and allow them to target the latest SDK features. Please let your developers know if updates are needed to fully support Android 16.

Testing involves installing your production app or a test app making use of your library or engine using Google Play or other means onto a device or emulator running Android 16 Beta 3. Work through all your app's flows and look for functional or UI issues. Review the behavior changes to focus your testing. Each release of Android contains platform changes that improve privacy, security, and overall user experience, and these changes can affect your apps. Here are several changes to focus on that apply, even if you don't yet target Android 16:

    • JobScheduler: JobScheduler quotas are enforced more strictly in Android 16; enforcement will occur if a job executes while the app is on top, when a foreground service is running, or in the active standby bucket. setImportantWhileForeground is now a no-op. The new stop reason STOP_REASON_TIMEOUT_ABANDONED occurs when we detect that the app can no longer stop the job.
    • Broadcasts: Ordered broadcasts using priorities only work within the same process. Use other IPC if you need cross-process ordering.
    • ART: If you use reflection, JNI, or any other means to access Android internals, your app might break. This is never a best practice. Test thoroughly.
    • 16KB Page Size: If your app isn't 16KB-page-size ready, you can use the new compatibility mode flag, but we recommend migrating to 16KB for best performance.

Other changes that will be impactful once your app targets Android 16:

Remember to thoroughly exercise libraries and SDKs that your app is using during your compatibility testing. You may need to update to current SDK versions or reach out to the developer for help if you encounter any issues.

Once you’ve published the Android 16-compatible version of your app, you can start the process to update your app's targetSdkVersion. Review the behavior changes that apply when your app targets Android 16 and use the compatibility framework to help quickly detect issues.

Two Android API releases in 2025

This preview is for the next major release of Android with a planned launch in Q2 of 2025 and we plan to have another release with new developer APIs in Q4. This Q2 major release will be the only release in 2025 that includes behavior changes that could affect apps. The Q4 minor release will pick up feature updates, optimizations, and bug fixes; like our non-SDK quarterly releases, it will not include any intentional app-breaking behavior changes.

Android API release timeline 2025

We'll continue to have quarterly Android releases. The Q1 and Q3 updates provide incremental updates to ensure continuous quality. We’re putting additional energy into working with our device partners to bring the Q2 release to as many devices as possible.

There’s no change to the target API level requirements and the associated dates for apps in Google Play; our plans are for one annual requirement each year, tied to the major API level.

Get started with Android 16

You can enroll any supported Pixel device to get this and future Android Beta updates over-the-air. If you don’t have a Pixel device, you can use the 64-bit system images with the Android Emulator in Android Studio. If you are currently on Android 16 Beta 2 or are already in the Android Beta program, you will be offered an over-the-air update to Beta 3.

While the API and behaviors are final, we're still looking for your feedback so please report issues on the feedback page. The earlier we get your feedback, the better chance we'll be able to address it in this or a future release.

For the best development experience with Android 16, we recommend that you use the latest feature drop of Android Studio (Meerkat). Once you’re set up, here are some of the things you should do:

    • Compile against the new SDK, test in CI environments, and report any issues in our tracker on the feedback page.

We’ll update the beta system images and SDK regularly throughout the Android 16 release cycle. Once you’ve installed a beta build, you’ll automatically get future updates over-the-air for all later previews and Betas.

For complete information on Android 16 please visit the Android 16 developer site.