Android Developers Blog Note

Android Developers Blog

The Android Developers blog is a platform maintained by Google to provide updates, insights, and guides for Android app developers. It publishes regular posts on various topics, including new features in Android, updates to the Android developer tools, developer success stories, and tips on developer best practices. The blog is targeted towards developers working on Android apps and aims to help them optimize their apps for the Android platform. It also encourages developers to share their experiences, ideas, and achievements in app development.

Thread Of Notes

The games category for Android Auto and Android Automotive OS has moved from beta to general availability. Developers can now publish games to these platforms, reaching users during natural downtime in their vehicles. To adapt an existing Android game, developers need to configure their app manifest and ensure the game respects the vehicle's parked state. The manifest must declare the app as a game using the android:appCategory="game" attribute.Support for Android Auto is declared by including the android.intent.category.CAR_LAUNCHER category element in an activity's intent filter. For Android Automotive OS, the android.hardware.automotive element must be included in the manifest. Games are considered parked apps and cannot run while the vehicle is in motion to prevent driver distraction. Developers should ensure their game audio stops when the user starts driving and does not unpause while the vehicle is in motion.Additionally, games must restore their state when relaunched after UX restrictions are active and be responsive without freezing or stuttering. Declaring controller support via the android.hardware.gamepad feature can boost app visibility for users seeking controller-compatible games. Games should also be adaptive to various car screen sizes and aspect ratios, running full screen without letterboxing or pillarboxing.Before submitting to production, developers must opt in to Android Auto and Android Automotive OS form factors in the Google Play Console and test their games against car app quality guidelines. The Desktop Head Unit and Android Automotive OS emulator are available for thorough testing. Games will be reviewed against the car app quality guidelines for the games category before approval.
Android Bench has been updated to version 2.0, introducing long-horizon tasks (LHTs) that mirror complex, multi-day engineering challenges. This upgrade also includes agentic evaluation, starting with agents from corresponding model providers. The previous benchmark focused on simpler, incremental code changes, but the new LHTs include tasks like app dependency upgrades, feature additions, and building apps from scratch. Traditional binary scoring is being replaced with continuous scoring to better reflect the nuanced progress made on these complex tasks. This new scoring method considers functionality, visual fidelity, and avoids regressions, with penalties for instruction deviations. Currently, the highest pass rate for LHTs is around 28%, a significant drop from the prior benchmark's success rate. AI models demonstrate strength in writing new code over refactoring existing code, excelling at established deterministic transformations. However, they struggle with tasks requiring runtime validation, breaking framework changes, or knowledge gaps in unreleased libraries. Porting cross-platform apps to Android remains a particularly challenging area for AI. The evaluation now incorporates commonly used agents to assess performance in agentic workflows. New models like Gemini 3.8 Flash and OpenAI’s GPT-6 have been added to the leaderboard. Android Bench 2.0 aims to provide transparency and empower developers by offering a more robust environment for evaluating AI for Android development. Feedback on the updated methodology and leaderboard is encouraged for future improvements.
Android Studio Quail 4 is now a stable release, offering enhanced AI capabilities for app development. The IDE now bundles curated "Android skills" for AI models, ensuring accurate and up-to-date code assistance for Android-specific tasks. These skills guide large language models through complex workflows, leveraging Google's best practices. Twenty-three pre-loaded skills cover areas like build upgrades, profiling, and UI adaptation. Developers can also create custom skills for specialized team workflows or use them with external command-line tools. Android Studio Quail 4 also integrates Gemma 4, Google's powerful open model, for private, secure, and offline AI coding assistance. This integration requires significant RAM but allows for multi-file refactoring without code leaving the local machine or hitting token limits. User interface enhancements in Quail 4 improve AI interactions with hyperlinked code symbols and real-time notifications for parallel agent tasks. A unified Summary of Changes tab consolidates multi-step task outcomes for easier review. For more advanced AI usage, developers can upgrade their Gemini access through API keys, Google AI plans, or Gemini Enterprise. The Quail series has progressively introduced features like App Quality Insights integration, agentic multitasking, local model support, and simplified planning modes. Android Studio Quail 4 provides users with a more efficient and intelligent development experience, encouraging users to download and provide feedback.
WhatsApp, the world's largest messaging platform, adopted passkeys in 2023, enhancing user security and convenience. This initiative aimed to provide a fast, phishing-resistant authentication method that reduces user friction and protects against account takeovers. Mayank Manuja, an Android Engineer on the WhatsApp Registration and Access team, led this design and implementation. Building for billions of users required navigating diverse network conditions, device capabilities, and digital literacy levels. Passkeys offer a streamlined, one-tap login experience, leveraging public-private key cryptography with biometric or screen lock authentication. This significantly improves sign-in speeds and functions reliably even where traditional SMS OTP delivery is inconsistent.From a developer perspective, the Credential Manager API provided a unified interface, simplifying integration despite numerous edge cases across Android versions and device configurations. WhatsApp and Google collaborated to optimize credential lookup flow, improving latency for new passkey users. They also built a comprehensive error-handling layer to manage device-specific hurdles and ensure graceful degradation when passkey flows couldn't complete. Furthermore, they tackled OS-specific exceptions, implementing platform-level improvements for smoother passkey creation flows.WhatsApp refined the user experience through extensive A/B testing, developing a contextual framework for prompting passkey creation. On the backend, WhatsApp's server implements standard WebAuthn/FIDO2 ceremonies using Erlang and a Rust webauthn-rs library for signature verification. The server architecture orchestrates passkey registration by generating options for the client, verifying attestation, and securely persisting credentials. For authentication, it fetches valid credentials, generates a server-side challenge, and verifies the client's assertion.Advanced architectural considerations included migrating to a multi-passkey per account system, which required engineering a bounded list system to evict older credentials once a limit was reached. This significant structural shift was rolled out gradually through rigorous experimentation to ensure stability. Balancing the credential lifecycle also required careful management of credential validity.
Google Play is introducing new quality requirements to enhance the Android ecosystem for both developers and users. These changes focus on reducing app memory footprint and simplifying secure device migration. New performance thresholds are being established to address hardware constraints and Android's memory limits. These thresholds will cover dynamic memory usage, bitmap memory usage, and code optimization. Developers will have access to new tools within Play Console to identify and resolve memory bloat issues. These tools include memory metrics in Android vitals, crash filters, and DEX code optimization insights. Proactive performance alerts will also be provided when apps exceed new bad behavior thresholds. Enforcement for these memory-related requirements will begin in February 2027. Apps failing to meet these thresholds may experience reduced visibility and publishing capabilities.Additionally, Google Play is introducing a new onboarding standard for secure and seamless device migration. This standard requires apps supporting user sign-in to implement Zero-Tap Sign-In using the Android Restore Credentials API. This feature will automatically restore a user's sign-in state when they switch to a new Android device. The Zero-Tap Sign-In requirement will also take effect in April 2027. While games are currently exempt, guidance for their authentication is expected in 2027. Meeting these upcoming quality requirements is crucial for maintaining optimal visibility and publishing capabilities on Google Play.
Android Automotive Operating System for Software Defined Vehicle leverages virtualization for domain isolation, running multiple logical domains like cluster and infotainment systems in parallel virtual machines. It inherits Android's robust security features, including user ID-based process isolation and a deny-by-default posture enforced by SELinux. AAOS SDV integrates Android's mature vulnerability management infrastructure for identifying, remediating, and disclosing security findings through automated scanning and penetration testing. Software integrity is ensured through authenticated software delivery, utilizing read-only partitions and APEX packages with mandatory signature validation. APEX packages enhance security through immutable storage, cryptographic integrity via dm-verity, strict process isolation, and atomic recovery mechanisms for updates. For platform resilience, AAOS SDV prioritizes memory-safe development, primarily using Rust for new components. It establishes distributed trust with a mesh provisioning architecture that cryptographically verifies communication endpoints, binding network identity to execution state. DICE-based authentication and attestation are used for hardware-grounded identity verification and integrity checks, particularly for securing VM-to-VM communication via TLS. Layered access control, consisting of service-level and VM-level permissions, allows OEMs to balance security with updatability for dynamic vehicle updates. Overall, AAOS SDV offers a secure-by-design approach for software-defined vehicles through multi-layered defenses and hardware-rooted verification.
The Jetpack Compose August 2026 release, version 1.12, is now stable. This update introduces Mesh Gradients and Wide Color Gamut support for richer visuals. It also brings structural layout features like named areas in Grid and seamless integration with Android's Credential Manager. For developers, the compile SDK is updated to API 37, requiring a minimum AGP 9.2.0, and Modifier.onFirstVisible() is now deprecated in favor of Modifier.onVisibilityChanged(). Graphics capabilities are enhanced with MeshGradientPainter for multi-point gradients and full pipeline support for Wide Color Gamut and HDR rendering. The experimental Styles API continues to be built, focusing on type safety and custom design systems. Runtime optimizations include a Keyed SideEffect overload for more performant one-shot effects. Animation features now include DeferredTargetAnimation graduation and new composables for two-stage transitions with manual control and seamless handoff. Text editing gains new APIs for rich-text formatting in BasicTextField and programmatic control over text selection via SelectionState. Credential Manager integration allows text fields to prompt for passkeys and saved credentials. Layout enhancements include named areas in experimental Grid layouts for easier complex 2D arrangement. Performance improvements focus on startup, aiming for Time to Initial Display comparable to Views. Testing upgrades offer improved test synchronization with new APIs like hasPendingWork and runWithoutImplicitWait.
Google Play's top priority is providing a safe online experience and protecting users from harm, and to achieve this, they have been investing in baseline protections and empowering parents with tools to make decisions for their families. Google Play also aims to empower developers to deliver age-appropriate experiences based on their app's content. The Google Play Age Signals API is a privacy-preserving tool that allows parents to share their child's age range with apps, enabling developers to tailor their in-app safety experiences and content. This API is being expanded to all Play developers globally, with the experience first being rolled out to users in Australia and Canada by mid-August, and a full global rollout later this year. The Play Age Signals API puts parents in control, allowing them to share their child's age range directly with apps, and also enables adults to easily share their age when prompted by the app developer. Developers receive the signals they need to tailor their own in-app safety experiences and content for users in an age-appropriate way, and they have the flexibility to choose how they integrate safety signals. The API simplifies safety settings for parents, putting age-sharing controls in one place, directly inside the Google Family Link app, and parents have a choice to share their child's age range, which can be updated or turned off at any time. The Play Age Signals API builds upon a strong foundation of established safety features and strict policies enforced on Google Play, including rigorous safety standards for apps designed for families and built-in tools for developers to manage who can discover their apps. The expansion of the Play Age Signals API globally adds a powerful new tool to Google Play's existing safety suite, helping parents and developers work together to make Google Play a safer and more trustworthy place for families. By providing a reliable signal, Google Play enables developers to retain complete agency to tailor their app's content, features, and settings to match their audience, and this helps to create a safer online experience for all users.
The Android team has been working on optimizing the performance of coroutines in Android apps, particularly those using Kotlin. The kotlinx.atomicfu library, which is used by kotlinx.coroutines, was found to be a bottleneck due to its use of AtomicReferenceFieldUpdater, which has a significant overhead due to reflection checks. To address this issue, the R8 compiler has been updated to optimize most AtomicFieldUpdater calls into Unsafe variants, resulting in a 2x to 4x performance improvement. This optimization is available in AGP 9.2.0 and later versions, and it has a significant impact on the performance of Jetpack Compose, which uses coroutines extensively. The optimization works by replacing AtomicFieldUpdater calls with calls to Unsafe, which eliminates the need for reflection checks. The R8 compiler can optimize these calls statically, resulting in a significant performance improvement. The optimization has been tested and verified through benchmarks, which show a 2x improvement in coroutine performance. Additionally, the ART team is working on implementing similar optimizations natively at the VM level, which will provide further performance improvements. The optimization is available by default when using AGP 9.2.0 or later, and it can also be used directly with R8 9.2.0. The performance improvement is significant, with some benchmarks showing a 2x improvement in coroutine performance. Overall, the optimization is an important step in improving the performance of Android apps that use coroutines and Kotlin. The optimization has been successfully tested and implemented, and it is now available for use in Android apps. The Android team continues to work on optimizing the performance of Android apps, and this optimization is an important part of those efforts.
Samsung's recent Galaxy Unpacked event introduced new foldable and wearable devices, expanding the variety of form factors and screen sizes developers must support. The Galaxy Z Fold8, with its landscape-first orientation and wider aspect ratio, presents new challenges for app layouts. Developers are encouraged to rethink their layout architecture to accommodate these dynamic displays, moving away from fixed assumptions about orientation and size. Key guidance includes building fluid, adaptive layouts that prioritize window class width and utilize flexible containers for content reflowing. Tracking actual app space using Jetpack Window Manager's Window Size Classes is crucial, especially in multitasking scenarios. The latest Jetpack Compose release offers new structural layout tools like Grid and FlexBox APIs for managing complex architectures and adapting UIs. Making apps fold-aware by using the Jetpack WindowManager library helps avoid placing crucial content over hinges and uses them as separators. Maintaining app continuity through ViewModel ensures seamless UI state retention during folding and unfolding. Camera implementations on foldables require migration to CameraX or integration with CameraViewfinder to handle sensor orientation and device rotation. Wear OS 7 introduces Wear Widgets, built with Jetpack Glance and RemoteCompose, allowing developers to create glanceable experiences for users' wrists. Finally, developers can leverage Gemini Nano 4 on Samsung devices and ML Kit's Prompt API to build intelligent, on-device features.
The Android team is celebrating the fifth anniversary of Jetpack Compose 1.0, which was released on July 28th, 2021. Since its release, Compose has evolved significantly and has become the standard for building native interfaces on Android. Today, more than 68% of the top 1,000 apps use Compose in production, and it has completely changed the Android ecosystem. Over the years, Compose has expanded to work on various form factors, including TV, WearOS, and display glasses. The team has also recorded an episode of Android Developers Backstage, where they discuss the history of Compose and its early days of development. Compose has come a long way since its beginnings, and the community has played a significant role in its success, with many developers contributing to its growth and creating innovative examples of its use. The latest version of Compose, 1.11, offers many new features, including adaptive APIs, and the team is now focusing on Compose-first development, with all future UI development happening only in Compose. The community has been instrumental in shaping Compose, and the team is grateful for the contributions of many developers who have created libraries, filed bugs, and pushed the boundaries of what declarative UI can do. The team is celebrating this milestone with in-person birthday parties and a live event on the Android Developers YouTube channel, where they will discuss Compose and answer questions. The future of Compose looks bright, and the team is excited to see what the next five years will bring.
This article discusses how to integrate app features into the Android intelligence system using AppFunctions, enhancing user experience with background, agent-driven actions. Traditional UIs are complemented by AppFunctions, which allow privileged agents on the device to access app features without user intervention. The authors adapted their travel planning app, JetPacker, by exposing key functionalities like expense tracking, itinerary management, and voice note capturing as AppFunctions. They identified tasks where voice or text commands are faster than manual UI interactions. For instance, logging an expense or asking about the next itinerary item can be done instantly in the background. Hands-free note capturing is also simplified, allowing users to dictate notes. The system operates on Android MCP, where the app acts as a local server exposing features via AppFunctions. These functions are compiled into sandboxed tool definitions discoverable by the agent. Development was accelerated using the AppFunctions development skill, which assists with data modeling, code generation, and testing. Custom data types are annotated with @AppFunctionSerializable, and features are exposed using @AppFunction. KDoc comments are crucial for LLM understanding of parameters and execution accuracy. Service entry points are created by extending AppFunctionService and annotated with @AppFunctionServiceEntryPoint. Verification of AppFunctions can be done through ADB commands or the AppFunctions Testing Agent. AppFunctions enable a new interaction model for apps, allowing agents to access features securely, with apps maintaining control over private data.
Android Studio Quail 2 is now stable and available for production use, offering a range of new features to improve the development experience. The update introduces concurrent agentic workflows, allowing developers to work on multiple tasks simultaneously without manual friction. The new architecture provides better performance and flexibility, enabling developers to decompose complex tasks and switch between multiple agent chats. Memory leak detection has been improved with the native integration of LeakCanary, a popular open-source leak detector, which can identify memory leaks and provide interactive leak traces. The Profiler can now render color-coded leak traces, allowing developers to jump to the exact line of code and fix the leak with the help of the Gemini agent. App Quality Insights has also been integrated with Agent Mode, enabling developers to track down the root cause of app crashes and resolve issues quickly. The agent can analyze the issue, propose a step-by-step fix plan, and apply the necessary code changes directly to the project. In addition to new features, the update includes quality and stability improvements, addressing numerous bugs and incorporating the latest performance enhancements. The new features and improvements aim to accelerate development and reduce manual friction, making it easier for developers to create high-quality apps. Overall, Android Studio Quail 2 offers a range of exciting new features and improvements that can help developers streamline their workflow and improve their overall development experience.
Google announced the preview of the Geospatial API in ARCore for Jetpack XR, bringing its Visual Positioning System (VPS) to Android XR. This technology enables digital content to anchor to the physical world with high accuracy and orientation in supported regions. To demonstrate its potential, a team developed the XR Geospatial Tour, an immersive, hands-free walking tour experience. This demo combines the Geospatial API, Gemini API with Firebase AI Logic, Google Maps Grounding, and the Jetpack XR SDK.The Geospatial API leverages computer vision to provide more accurate location and heading than GPS. The application monitors accuracy thresholds, prompting users to move to recognized outdoor areas if indoors or in unsupported locations. To create the tour itinerary, the Gemini API is prompted with user coordinates to generate structured JSON responses detailing nearby walking tours. Google Maps Grounding is used to anchor the AI's generated locations, preventing inaccuracies.Dynamic voiceovers are implemented using the gemini-2.5-flash-tts model, which can directly return audio data. This adds a present and engaging element to the virtual tour guide. Jetpack Compose for XR is used to render spatial components and bring the tour to life in 3D. The team built custom composables like InfoSphere to display points of interest interactively.By combining Jetpack Compose for XR with the Geospatial API and Gemini, developers can create spatial experiences that understand both user location and context. The availability of the Geospatial API lowers the barrier for building world-scale spatial applications on Android. Developers can apply for the Android XR Developer Catalyst Program to gain access to XREAL Project Aura devkits. This initiative aims to foster innovation in Android XR development.
Android 17 has been released, transitioning the operating system into an intelligence system centered around apps. It emphasizes adaptive-first development with mandatory large-screen resizability and enhances privacy, security, media, camera, and performance. The source code is now available on AOSP for developers to examine. Android 17 integrates hardware, software, and AI to anticipate user needs and offers new opportunities for app engagement. AppFunctions, a platform API, allows apps to contribute capabilities as orchestratable "tools" for AI agents. The Jetpack library simplifies the implementation of AppFunctions through class annotations and KDoc comments.With over 580 million large-screen devices, adaptive development is crucial, hence the shift to an adaptive-first standard. Android 17 removes orientation and resizability restrictions on large screens for apps targeting API level 37, requiring them to adapt to any window size. New multitasking features include App Bubbles for floating apps, a Bubble Bar on large screens to manage these bubbles, and interactive Picture-in-Picture for desktop environments. Activity recreation defaults have been updated to prevent disruptive state loss during configuration changes.The "Continue On" feature allows seamless task transitions between Android devices. Jetpack Compose is now the primary way to build adaptive apps, with all new Android APIs and libraries exclusively for Compose. Legacy View components are now in maintenance mode. Android 17 includes performance improvements, such as stricter app memory limits that will terminate offending processes. Generational garbage collection and a lock-free MessageQueue further enhance performance by reducing CPU usage and UI stutter.
The Android XR ecosystem is experiencing rapid growth with new tooling and expanded engine support. Developer Preview 4 of the Android XR SDK is now available, allowing developers to build and iterate on both immersive and augmented experiences from their laptops. This preview includes libraries for targeting different XR experiences and an emulator in Android Studio for hardware-free testing. The Jetpack Projected library enables developers to extend existing mobile apps for intelligent eyewear, adapting behavior based on device availability. Specialized tools and updated Jetpack Compose Glimmer components facilitate UI building and optimize legibility on optical see-through displays. For immersive experiences, Developer Preview 4 offers Kotlin-first architectural upgrades and an early preview of the Geospatial API for wired XR glasses. This API, combined with ARCore and Google's Visual Positioning System, allows digital content to be anchored to precise real-world locations. Official support has been added for Unreal Engine and Godot, alongside existing Unity support, to ease the transition of existing XR experiences. The Android XR Engine Hub, a desktop tool for Windows, further shortens iteration cycles by enabling real-time testing within engine viewports. The Android XR Developer Catalyst Program is open for applications, offering pre-release hardware and support to selected developers. Developers can begin building now with the Samsung Galaxy XR available and Developer Preview 4 of the SDK. Comprehensive technical sessions are also available on the Android XR YouTube Playlist.
Google I/O has introduced new announcements and resources for Android development, including the expansion of AI and agent-assisted tooling. The Android CLI is now stable at version 1.0, with new features and integrations that enable more efficient navigation and precise output. This version of Android CLI introduces programmatic version lookup, support for Journeys, and bridging capability to allow agents to integrate directly with Android Studio. The Android CLI now integrates seamlessly with Android Studio, providing access to unique tooling such as performance profilers and Compose Previews. Google Antigravity now officially supports Android development with the Android resources bundle, which includes the Android CLI and skills. The Android resources bundle can be installed during onboarding or later from the Settings menu, providing Antigravity with powerful tools and knowledge to perform core tasks. The repository of Android skills is also expanding, with over 17 skills available for areas such as Adaptive UI and Jetpack Compose. Android Bench, a leaderboard for testing LLMs on real-world Android development challenges, has added new models, including Gemma 4 and Gemini 3.5 Flash, to evaluate their performance. The goal of these updates is to support Android developers wherever they choose to build, providing more helpful options for AI assistance and accelerating model improvements. By expanding its AI-assisted Android development offerings, Google is supporting developers in bringing their ideas to life faster and easier than ever before.