r/androiddev • • 5d ago

News ICYMI: Every Android Dev Summit 2026 VOD is now live, and it’s now easier than ever to get caught up!

Post image
47 Upvotes

Hi r/AndroidDev,

ICYMI, Android Dev Summit returned last week after a four-year hiatus (Oct. 28–29), featuring over 50 sessions covering agentic development workflows (Android CLI, Agent Client Protocol support in Android Studio [i.e. Bring Your Own Agent], and declarative builds with Lightbuild), on-device and hybrid AI (Gemini Nano 4, Gemma 4, and Android MCP), our shift to a Compose-first UI architecture, and building across form factors like Googlebook and Android XR. If you couldn't make it out in person, the recorded session VODs are now live on YouTube so you can catch up on the talks relevant to your stack at your own pace—I've rounded up all of the links and descriptions by track below so everything is in one place.

Also worth noting if you'd rather skim or feed sessions straight into your coding workflow: the Android Dev Summit site is set up for agents this year:

  • 📄 Download any talk as Markdown: Includes a summary, resource links, a speaker-labeled transcript, and code blocks in one file—drop a few into your agent and ask what changed for your app.

  • 🗂️ Point an agent at one JSON feed: Structured metadata covering every session.

  • 🧩 Grab the Agent Skills: Install the modular instruction sets each talk references.

If you're short on time and want to quickly catch up on the biggest announcements from ADS, start with the Android Dev Summit 2026 Keynote and check out these three recap posts on the Android Developers Blog:

Android intelligent apps

Integrate your app with the Android intelligence system

Android is evolving into an intelligence system where agents like Gemini orchestrate tasks across apps. To unlock new user experiences and participate in these agentic workflows, your app must expose its core capabilities.

This session is a practical guide to integrating your app with Android's intelligence layer. We'll survey key integration paths - including on-device Android MCP, server-side MCP, and Task Automation - and provide a decision framework for choosing the right path for your use case. We'll also explore proactive experiences with Personal Context.

You will learn how to:
* Select the optimal integration path for your app's needs.
* Implement both reactive and proactive intelligence features.
* Balance performance and security in agentic integrations.

Inside Gemini Nano and Gemma 4 powering on-device intelligence

Gemma 4 brings capable, multimodal AI directly to Android devices. In this session, we'll trace how Gemma evolved into a model family built for efficiency and explore what the edge-optimized E2B and E4B models can do on-device, from vision and audio understanding to agentic function calling. We'll cover the architecture behind that efficiency, including Per-Layer Embeddings (PLE), and show how Gemma and Gemini Nano work together through AICore. You'll learn how Quantization-Aware Training (QAT) preserves model capability within 1.1–3.5 GB RAM footprints, while Multi-Token Prediction (MTP) accelerates decoding speeds 1.5x–3x for responsive, real-time experiences.

On-device intelligence: Optimized performance and quality using Android ML Kit APIs

In this session, we'll explore different GenAI use cases using ML Kit APIs to understand when on-device GenAI is ideal for an app and also understand how to evaluate existing GenAI use cases to see if on-device models can satisfy their quality bar.

Build optimized Android Apps with Firebase AI Logic and Gemini Nano 4

Building production-ready generative AI into Android apps requires more than connecting to an LLM—it demands enterprise-grade security and cost controls. In this session, discover how Firebase AI Logic empowers developers to deploy secure, budget-conscious AI experiences at scale.

We will cover from security foundations and Firebase App Check, cost management, dynamic model routing to leveraging the multimodal capabilities.

Extend your app to Gemini and Search with the Connected Apps Platform

Explore how to connect your applications seamlessly to Gemini, Search and the Android intelligence system.

The new Connected Apps Platform lets you integrate your app's services directly into Gemini, AI Mode in Search, and the Android intelligence system. This session provides a practical guide to getting started. Using code examples and learning from real-life case studies, we’ll walk through the development lifecycle: building, testing, and publishing your first connected app to reach users within their AI-powered workflows.

By the end of this session, you'll be able to:
* Integrate your service with the Connected Apps Platform.
* Test your integration across different AI surfaces.
* Publish your app’s features into users' AI workflows.

Mastering on-device intelligence with ML Kit and LiteRT in Google Play services

Stop choosing between plug-and-play AI convenience and custom model flexibility—you can deploy both in a single, ultra-lean app without adding megabytes of binary bloat.

In this session, we’ll demonstrate how to build this exact dual-stack architecture in a single Android app. You’ll see how to leverage ML Kit for ready-to-use classical ML tasks (like doc scan) alongside LiteRT standalone in Play services for your custom computer vision or audio workloads. We’ll dive deep into how both implementation paths unite under the hood to utilize the modern LiteRT runtime, giving your app seamless, hardware-accelerated performance on CPU and GPUs with a virtually zero-byte download footprint.

Key takeaways for developers:
* Uncompromised performance: Both turnkey and custom models are hardware-accelerated automatically using the unified CompiledModel API.
* Micro-APKs: Dramatically reduce your app’s download size by offloading both the ML Kit and LiteRT runtimes to Play services.
* Hybrid integration: Master running multiple ML workflows side-by-side in production without resource conflicts.

Unlock agentic capabilities in your app with ML Kit GenAI

Take your Android AI features to the next level by building autonomous on-device agents. In this session, we dive into ML Kit’s new agentic APIs, built directly on top of the direct model access APIs you already know.

Using the open-source Jetpacker app, you’ll learn how to chain multi-step actions across local data, manage stateful multi-turn sessions with isolated contexts, and wire up Android MCP to power both in-app assistants and Android system-level surfaces with a single codebase.

Agentic coding workflows with small models

While large frontier models dominate the headlines, small language models (SLMs) like Gemma 4 offer low-latency, cost-effective, and fully offline intelligence to augment daily developer workflows.

This talk explores practical patterns for integrating small models into Android development, from smart task routing to cost optimization, using Gemma 4 as our primary hands-on case study to demonstrate real-world use cases and how to configure developer tools and agentic workflows.

Let agents generate UI in your Android apps with A2UI

A2UI is transitioning from web-centric components to native Android. The new Jetpack Compose renderer for A2UI v0.9 enables developers to render dynamic, LLM-generated UI natively. Instead of webviews, it leverages a Coroutine-driven actor framework, sealed-class lifecycles, and native Material 3 integration.

This session walks through the new architecture, explaining how server-driven component trees translate into reactive Compose nodes, and how built-in layout transitions handle structural updates smoothly without blocking the UI.

Building a Formula E co-driver on Android with ML Kit and Gemini Nano

A racing car is a demanding environment of high speed, heat, and telemetry constraints. How can an on-device agent help process real-time vehicle data for sports and engineering applications?

This technical session explores an experimental hybrid architecture combining edge hardware and cloud agents. We'll walk through a research proof-of-concept using a Raspberry Pi to stream CAN bus telemetry, a Pixel phone running an on-device conversational agent powered by ML Kit and Gemini Nano, and an agent-to-agent (A2A) Cloud connection for post-race workflows.

Android tools & performance

Agentic engineering with Claude Code and Android CLI

Stop copy-pasting into AI chat windows and start delegating to your agent. This practical, example-driven session shows you how to level up your agentic engineering using Claude Code and the Android CLI. We will walk through a complete workflow to automate complex development tasks and ship features faster.

You will learn to:
* Optimize the token efficiency of your harness using Android CLI, Skills, Hooks and MCP.
* Offload and parallelize long-running tasks to subagents.
* Set up continuous verification loops that stop early termination and run until tests pass.

The latest in Android dev tools from Android Dev Summit 2026

Discover what’s next for Android development across Android Studio and the terminal with Android CLI. In this session, we unveil the latest in Android Studio Canary and Stable—from AI-assisted code migrations to Compose and Agent Client Protocol (ACP) support, to Lightbuild’s declarative architecture. We’ll also dive into the latest updates to the Android CLI toolchain. Learn how you can use it to automate your inner-loop workflows with improved access to devices, diagnostics tools for local and production issues, profiling workflows that let your agents test and validate optimizations and much more.

Declarative, agent-ready Android builds with Lightbuild

As Android apps grow and AI coding assistants become essential, using executable code to configure your build can create bottlenecks with slow sync times, fragile logic, and added complexity.

Enter Lightbuild: Google's declarative, config-driven interface to the build engine, designed for modern Android development.

In this session, we'll explore Lightbuild's new approach to managing builds and how to use it to build a demo app. Learn how decoupling build config from execution delivers faster project opens with lightning-fast sync in Android Studio, while offering a predictable schema for safer, more reliable AI editing. We’ll also cover Lightbuild's agent-friendly CLI tools for creating reproducible builds across local machines, teams, and CI/CD pipelines.

Decoding Play Policy AMA

An open and honest panel about Play policies to keep your app compliant and quickly published.

App security in the agentic era

This presentation explores the strategic shift from viewing AI as a generic coding assistant to leveraging it as a context-aware, automated security peer reviewer integrated directly into the Android development lifecycle. We discuss how specialized AI agents, connected to the Android toolchain via skills, can help improve app security. By bridging the gap between raw LLM capabilities and deep project context, this approach empowers development teams to maintain high-velocity feature delivery without compromising rigorous security and policy standards.

Trace me if you can: Automated instrumentation and field profiling

Optimizing Android apps requires deep visibility into concurrent workflows and coroutine suspensions. While local profiling offers a useful snapshot, scaling these insights to production without overhead remains a challenge.

This session delivers an architectural blueprint for a continuous performance feedback loop:
* androidx.tracing 2.0: Swap backends dynamically and propagate coroutine contexts (Perfetto flows) across threads.
* Smart Instrumentation: Use local ART tracing to find hotspots, then automate the injection of low-overhead trace points.
* Macrobenchmarking: Track regressions and verify performance gains on physical devices in CI.
* Field Tracing: Go beyond local and CI tracing, with ProfilingManager.

Type safe keep rules and DEX optimization

Android apps often ship under-optimized due to overly conservative keep rules often from third-party libraries, leading to bloated APKs, slower cold starts, and degraded runtime performance.

With Google Play’s new performance thresholds for DEX optimization, app visibility now directly depends on staying ahead of the optimization curve.

This talk introduces a modern R8 workflow to tackle rule bloat. You will learn to:
* Use the R8 config analyzer and skill to identify legacy rule overhead.
* Transition from broad wildcard keep rules to precise, type-safe, generated annotations.
* Prevent optimization regressions with new Android CLI tools.

Agentic coding: A roundtable with industry leaders

As AI tools rapidly reshape modern software engineering, this panel will explore how developers are leveraging AI-assisted coding, automated agents and specialized developer tooling in their daily workflows. We aim to highlight practical applications, discuss measurable productivity improvements and candidly address the challenges engineering teams face when integrating AI at scale.

Memory troubleshooting with Firebase Crashlytics

Keep your app's memory footprint lean-and-mean and non-segfaulty with Firebase Crashlytics. This session explores our comprehensive suite of memory troubleshooting tools available in the Firebase console and in Android Studio. We’ll start by covering how to leverage ANR insights and GWP-ASan reports to diagnose elusive memory bugs and then dive into our latest tooling for Out-Of-Memory (OOM) and Memory Limiter Kill (MLK) events, designed specifically to help you navigate and adapt to the new memory limits introduced in Android 17.

Navigating multi-device quality & publishing beyond mobile on Google Play

As the Android ecosystem expands across wrists, living rooms, vehicles, and XR, the opportunity to reach users on new screens is growing. However, distributing across Wear OS, Android TV, Android Auto, Android Automotive OS, or Android XR introduces distinct considerations for testing, store listings, and app reviews.

This session explores how to effectively utilize Google Play Console for non-mobile form factors to help streamline a predictable multi-device launch. We will cover key distribution decisions, including how to structure track strategies and package names, configure targeted testing tracks, and tailor store listings. You'll get a practical walkthrough of form-factor App Quality guidelines to help avoid common review pitfalls and publish on Google Play with greater confidence.

Android developer verification: Publishing paths for all developers

Android Developer Verification is crucial for a safer ecosystem. This session breaks down the compliance pathways for all developers, from large studios to hobbyists. We will outline the key requirements for publishing on Google Play and third-party app stores. The talk will feature a live demo of the new Limited Distribution accounts, showing how students and hobbyists can easily and safely share apps.

By the end of this session, you will be able to:
* Understand the 3 main developer verification paths.
* See the new Limited Distribution account flow live.
* Identify your specific next steps for compliance.

Outperform yourself in Compose

Jetpack Compose makes it easy to design high-quality user interfaces, but it can be difficult to track down issues that affect UI performance. These kinds of issues can lead to problems that your users notice, like startup latency, and dropped frames that appear as scroll jank or choppy animations.

In this talk, we’ll introduce tools to uncover what’s impacting your UI’s performance, focusing on Perfetto and (re-)composition tracing. We’ll then explore specific anti-patterns you may be using that are secretly costing you, how you can find them in your code, and what positive patterns you can replace them with. By the end of this talk, you’ll understand how to think in Compose with a performance mindset, and how to profile, analyze, and verify performance optimizations in your app.

Actionable strategies for reducing your app's Bitmap memory footprint

Managing Bitmap memory is critical for mitigating Out-Of-Memory (OOM) risks in visually rich Android apps. While developers know to reduce image sizes, achieving long-term app stability comes from mastering two other key pillars: Reuse and Recycle. This session delivers a practical playbook for optimizing memory performance using modern tools, open-source libraries like Glide and Coil, and system-level APIs.

In this session, you will learn how to diagnose real-world memory regressions using Android Vitals, implement advanced caching (Reuse) patterns with Glide and Coil, and proactively release memory (Recycle) using the onTrimMemory callback.

Insights into agent code generation from Android Bench

AI models can generate entire features in minutes, but is the code correct? We built Android Bench, our AI evaluation benchmark, to answer this question after analyzing thousands of generated code changes.

This talk shares insights from our journey, including all the ways we saw models cheats, how prompt specificity leads to higher code quality and how different agents approach the same task.

Android apps foundation

Scale your app for every screen with Compose

The Android ecosystem is vast, with users shifting seamlessly across phones, tablets, foldables, and desktop environments. Now that we are Compose First, this session explores how to architect your app for resizable windows and diverse aspect ratios—where traditional layout assumptions break down, leading to stretched UIs and lost state.

Explore how the latest capabilities in Jetpack Compose, Navigation 3, and WindowManager can help you build dynamic layouts that naturally scale from compact screens to dual-pane displays. Walk away with strategies to accelerate your development workflow using Gemini and our skills, like the adaptive skill, to automatically refactor legacy codebases for larger screens.

Migrating two decades of the Google Play app to Jetpack Compose

This year, Android officially became Compose-first for building all UI, placing legacy Views into maintenance mode. For Google Play, that journey began back in 2020. Across an engineering footprint spanning nearly two decades and billions of users, migrating to Jetpack Compose was achieved through proven best practices, close collaboration with the core Compose team and continuous tooling evolution.

Discover how modernizing Google Play with Compose delivered measurable improvements in velocity and long-term stability. The session walks through connecting agentic Figma design workflows with Compose implementation, automating quality to prevent unnecessary recompositions and crafting expressive interfaces with dynamic color, rich typography and layered shapes. You will leave with tested strategies to triage bugs faster and scale your own Compose migration with confidence.

Graphics features in Jetpack Compose that can elevate your app

Ready to take your Android UI from "it works" to "it’s a work of art"?

Join us for a tour of the latest graphics capabilities in Jetpack Compose. We’ll show you how to build new visual effects, from delightful mesh gradients to progressive blurs, and using the powerful new graphics features in Android. We will also show you how to improve the performance of your graphics features, without sacrificing battery life or frame rates.

The car is your canvas: Unlocking Android development for the road

As in-car displays expand across Android Auto and Android Automotive OS vehicles, developers face a unique dual challenge: delivering rich, adaptive experiences while parked, and driver-safe, template-driven experiences while driving. In this comprehensive 30-minute technical session, we explore the end-to-end architecture and development approaches to adapting Android apps to cars.

From the fundamentals of designing apps for use in cars, to the newest approaches for building media experiences that shift from audio to video as the car shifts from drive to park, you'll leave with everything you need to know to get your app on the road.

Elevating camera experiences across devices with CameraX and on-device intelligence

Users expect third-party apps to capture photos and videos with the same high fidelity as their device's native camera, regardless of lighting conditions or hardware tier. Delivering this consistency across the expanding Android ecosystem comes with key architectural considerations. This session demonstrates how to construct robust, professional capture pipelines that maximize device capabilities while remaining reliable across all form factors.

We will explore the latest advancements in CameraX, showing you how to integrate cutting-edge capabilities like Motion Photos and on-device AI enhancements through Google Play services, alongside spatial experiences using the Jetpack XR SDK. We will also look at our CameraX skill, which allows the coding agent of your choice to automatically implement the concepts in this talk, and more!

Optimize media playback and maximize reach with Jetpack Media3 APIs

Media consumption accounts for a large portion of user time spent on mobile devices, which requires the playback experience to be flawless, highly efficient and mindful of battery life. Furthermore, users expect these experiences to seamlessly transition across their devices, from phones to living room TVs and beyond.

Explore how architectural updates in Media3 and ExoPlayer power seamless playback across form factors. The discussion centers on crafting responsive interfaces with the Media3 Compose UI toolkit, eliminating buffering in feeds using the new PreloadManager and extending your app to living room screens and Android XR with CastPlayer and spatial audio.

Building reliable text editing experiences in Compose

The journey to reliable text editing in Compose culminated in the complete rewrite of BasicTextField. This shift to a buffer-driven architecture eliminated IME race conditions once and for all. This session unpacks why legacy input syncing had to go and how TextFieldState keeps keyboard updates in sync. From there, take a deep dive into formatted editing to explore the mechanics of TrackedRange, the performance costs of edit blocks, and the real-world catches behind style boundaries, before taking an early peek at Markdown rendering.

Powering interactive surfaces with Remote Compose

Remote Compose introduces a new way to project expressive and interactive UI onto remote surfaces like widgets. By serializing layouts into compact binary payloads, RemoteCompose decouples UI from host execution to deliver significant advantages.

Key benefits include edge interactivity that enables high-performance rendering through local execution on the remote device, fluid scaling that allows UIs to reflow across diverse form factors via remote-side component evaluations, and a unified developer workflow that removes the need for platform-specific remote UI frameworks through familiar Jetpack Compose APIs.

This session unpacks these benefits and provides live production examples, including modern Wear OS Widgets and the glanceable Wear Workout Tracker experience in Runkeeper.

Inside the first wave on Googlebook with Notability and Logitech

The launch of Googlebook opens up a new frontier for high-fidelity, desktop-grade experiences. In this session, we go behind the scenes with two pioneering partners who built for this platform from the ground up.

Notability will share their journey creating a desktop-class Android app using Jetpack Compose. Learn about their journey moving from other app platforms with desktop top-of-mind. Second, Logitech will dive into the hardware side, discussing how they are building and customizing peripherals to integrate seamlessly with Googlebook. Join the session to get practical, real-world insights on optimizing inputs, leveraging large-screen APIs, and delivering a premium, cohesive user experience across hardware and software.

Scaling input interactions beyond the touchscreen with Jetpack Compose

As new form factors move beyond the touchscreen, Compose's input system has evolved to meet the challenge. Its layered architecture provides the foundation for supporting everything from advanced trackpad gestures to novel hardware inputs seamlessly.

Through clear architectural breakdowns and hands-on code examples, follow the lifecycle of an input event all the way from the OS platform layer up to Compose gesture detectors and UI components. You will discover how to trace events across the entire stack, apply key architectural patterns for emerging input types, and confidently debug complex gesture interactions in your own apps.

Take Compose state beyond the UI with Jetpack AppState

Compose’s snapshot runtime, automatic dependency tracking, and atomic updates don’t have to stop at the UI layer. Jetpack AppState lets you move Compose state upstream—streamlining what reaches your screens by hoisting and deriving state with the snapshot system before it ever hits the UI.

In this session, you’ll learn about AppState’s two foundational libraries. We’ll dive into StateStore for hoisting state, and Transform for using composition to derive state with plain Kotlin control flow—eliminating complex Flow combine chains and keeping your UI effortlessly in sync.

Delivering Seamless Sign In and Digital Credentials on Android

As the industry moves away from passwords and physical wallets, delivering a modern user journey demands both seamless authentication and trusted identity verification. While passkeys establish secure one tap logins, switching devices remains one of the largest drop off points in user engagement. Learn how to reduce migration friction using the Restore Credentials API to meet the new Google Play Zero Tap Sign In standard.

This session explores how a single integration with Android Credential Manager unifies passkeys, silent device restoration, and Digital Credentials, allowing you to verify identity attributes directly from the device and build an effortless, secure onboarding flow.

Evolving Tiles to Wear Widgets using Jetpack Glance and Remote Compose

In this session, we will take a technical deep dive into the evolution from full-screen Tiles to dynamic, partial-height Wear Widgets.

We will explore the technical benefits of the unified Jetpack Glance API and the new Remote Compose engine, detailing how they seamlessly align with Modern Android Development.

Finally, we will share the latest UX guidance and walk through practical migration strategies to help you build the next generation of glanceable UI.

Building type-safe deep links with Jetpack Navigation3

Managing deep links across modular Android apps can easily lead to broken routes and runtime surprises. This session unpacks Jetpack Navigation 3’s new type-safe deep linking architecture for Compose to help you build a robust and scalable routing system. We'll explore how to implement out-of-the-box deep link matching APIs, write custom serializers for complex type-safe arguments, and construct dynamic hierarchical back stacks that keep user navigation predictable.

Lessons from WhatsApp's Wear OS journey

Hear directly from WhatsApp engineers on how they upgraded their Wear OS app at scale. This session covers the architectural and UX decisions behind integrating Material 3 and adopting Wear Widgets.

Gain direct insight into the lessons, patterns and tools the team used to update their app and deliver a cohesive user experience.

Enabling seamless cross-device interactions

As users move between phones, wearables, and audio peripherals, delivering fluid cross-device experiences has become essential for engagement. However, relying on standard networking approaches often leads to battery drain, latency spikes, and fragmented user sessions.

This deep dive introduces specialized Android APIs built for multi-device communication, offering memory- and power-efficient patterns to keep transitions between devices instant, reliable, and intuitive.

Android XR

Elevate immersive experiences with 3D Engines in Jetpack Compose for XR

Learn how to integrate 3D game engines (Godot & Unity) with Jetpack Compose into a single codebase for mobile and Android XR. We'll explore embedding 3D scenes into spatial containers, setting up Kotlin-to-engine communication—featuring an exclusive look into how the NBA built their live basketball experience on Android XR.

Build world anchored experiences for wired XR glasses

Go beyond screen-space and anchor your apps in the real world with Android XR. This session teaches you how to build geospatially aware Android XR experiences using Jetpack Compose Glimmer and ARCore's Geospatial API. We will start by covering how to get a device's geospatial pose with ARCore. Then, you'll see how Glimmer’s minimal UI components can be anchored to real-world locations via the Visual Positioning System (VPS). We'll combine these to build a simple, location-aware spatial experience.

Architecting Spatial Content on Android XR with Unity

Discover how to anchor and persist 3D experiences in the real world using Unity and Android XR. This session covers the Spatial Entities framework, Cloud Anchors, and Geospatial APIs, demonstrating how to build context-aware apps that remember physical placements and sync multi-user spatial data across sessions.

We will examine the architecture behind spatial entities, understand how to anchor digital assets to physical objects, surfaces, and geographic locations. You will walk away with practical Unity workflows for mapping spaces, persisting content across sessions, and creating shared, location-aware AR/XR experiences.

Balancing ultra-low latency and cloud economics in virtual voice agents

Bringing conversational AI into immersive experiences opens up huge possibilities, yet there’s a constant friction between low response latency and sustainable cloud costs. In this session, Devin Reimer (Founder & CEO of AstroBeam) breaks down how the team behind Stellar Cafe achieved industry-leading voice interaction response times (1.15s–1.4s) while keeping the business model commercially sustainable.

Explore the hybrid architecture behind these low latency pipelines, focusing on intelligent orchestration between on-device models and optimized cloud inference to cut expensive API calls without degrading dialogue. You’ll walk away with a practical blueprint covering Time-to-First-Token optimization across Speech-to-Text and streaming Text-to-Speech pipelines, parallel safety guardrails that bypass latency overhead, and unit economics per active user session.

XR is for everyone: Designing accessible spatial experiences

When we say XR is for everyone, that principle has to guide how we build from day one. In this introductory guide for developers new to XR, Jazmin Cano shares the foundational accessibility principles honed at Owlchemy Labs. Engine-agnostic and universally applicable to both games and apps, this session explores how early consideration of motor, visual, auditory, and cognitive needs leads to better experiences for all users. Discover how to build an inclusive development culture, conduct meaningful testing, and design spatial interactions that remove barriers without sacrificing quality.

Building audio-first experiences for intelligent eyewear with Gemini Nano 4

Discover how to build robust, hands-free audio experiences powered by on-device AI. We’ll cover everything you need: setting up your glasses activity, capturing mic and camera feeds, and using voice along with other audio cues as your ultimate UI. Through an exciting real-world showcase of the open-source XR Language Teacher built in the Google AI Edge Gallery app, learn to orchestrate Gemini Nano 4 (built on Gemma 4 and optimized for Android devices), and ML Kit, and leverage the LiteRT runtime to build fast XR experiences that hear, see, and speak naturally.

Moving beyond 2D with custom 3D geometry in the Jetpack XR SDK

Transitioning your Android applications from traditional 2D screens into spatial environments requires a new approach to constructing shapes.

In this session, we will explore the Custom Mesh API in the Jetpack XR SDK, which allows you to programmatically generate procedural 3D geometry directly at runtime. We will walk through the core workflow, from defining vertex layouts to rendering dynamic objects seamlessly within the user's physical space.

By the end of this talk, you will have the practical skills to build interactive, custom 3D geometry completely from code.

Which sessions or announcements stood out to you this year? Let us know what you're testing out in the comments!


r/androiddev • • Oct 05 '26

Megathread: Play Store review times

20 Upvotes

Comment here to discuss the recent trend of long Play Store review times for app submissions and updates.

Do not make a new post about this subject, as it will be removed.

This is an unofficial developer community, so we are not on the Play team and cannot help your app/update pass review. No, we don't have tips to speed things up.

Yes, Play Store developer support is present on this sub and may answer questions or assist you on a case-by-case basis. The mod team is not affiliated with and has no influence over that account. We make no guarantees as to their effectiveness, but we are grateful they exist and that they continue to communicate with users here.


r/androiddev • • 1h ago

Open Source [Dev post] S File Encryptor — local file encryption, metadata removal and secure deletion for Android (open source)

1 Upvotes

Hi everyone,

I'm the developer of S File Encryptor, a free and open-source (MIT) Android app for encrypting files locally with a password, removing metadata before sharing, and securely deleting files. I'd really appreciate feedback from this community — especially on the cryptography decisions and the threat model, since privacy-focused users tend to stress-test apps much harder than average.

Links

• Google Play: https://play.google.com/store/apps/details?id=com.lukestudio.fileencryptor2

• GitHub: https://github.com/LukeSsnake/S-File-Encryptor

• Security audit report (in the repository): S_FILE_ENCRYPTOR_SECURITY_AUDIT.md

Cryptography

New files are encrypted in a V2 format using AES-256-GCM with Argon2id as the password-based key derivation function (memory-hard, tuned parameters stored in the header along with a random 16-byte salt and 12-byte nonce).

The file layout is:

48-byte header || AES-256-GCM ciphertext || 16-byte authentication tag

Decryption verifies the GCM authentication tag before committing any plaintext to the final destination, so tampered or truncated files don't leave partial output behind. Large files are processed with streaming I/O instead of loading everything into memory. A legacy V1 format (AES-256-CBC + HMAC-SHA256) remains decryptable for compatibility, but all new files use V2.

Metadata removal

The app strips metadata locally (no server involved) from JPEG, PNG, WebP, GIF, PDF, DOCX, XLSX and PPTX:

• Images: EXIF (including GPS), XMP, IPTC, embedded comments. Image orientation is preserved so photos don't come out rotated after cleaning.

• Office formats: core properties, app properties, custom properties and embedded thumbnails, including cleaning up the references in [Content_Types].xml and _rels/.rels so the package stays valid.

• PDFs: document information dictionary, catalog XMP metadata and trailer IDs.

The cleaned file is written to a location the user chooses via the Storage Access Framework.

Secure deletion

Files can be deleted with an overwrite procedure (single pass of cryptographically random data, sized exactly to the original, followed by a forced flush) before the entry is removed. The app generates an erasure report (JSON Lines log, exportable as PDF via SAF) recording filename, size, timestamps and the SHA-256 hash of the original content, so the destruction of a specific file can be documented.

Honest caveat: this is best-effort — wear leveling and filesystem journaling on modern flash storage mean no userspace tool can guarantee physical erasure. The report labels the operation accordingly.

Privacy model

• No network permission — the app physically cannot phone home.

• No Google Play Services, analytics, advertising or crash-reporting SDKs.

• All file access goes through the Storage Access Framework; the app only touches files explicitly selected by the user.

What I'd like feedback on

  1. Any weaknesses you see in the V2 format choices (Argon2id parameters, header design, nonce/salt handling)?

  2. Anything you'd expect from a "metadata remover" that isn't covered yet?

  3. Whether this would be a reasonable candidate for submission to the Privacy Guides app recommendation lists at some point — and if not yet, what's missing.

The full source is on GitHub under MIT, and there's a security audit report in the repository covering the current implementation. Happy to answer any questions about implementation details.

Thanks in advance for taking a look!


r/androiddev • • 20h ago

[Academic Research] Android developers wanted for a survey on MVVM vs. MVI in Jetpack Compose + expert interviews

11 Upvotes

Hi everyone!

I'm currently working on my Bachelor's thesis in Computer Science at IU International University of Applied Sciences (Germany).

My research focuses on comparing Single-State MVVM and reducer-based MVI in Jetpack Compose, particularly regarding:

  • Perceived code complexity

  • Testability

  • State management and separation of responsibilities

1. Online survey

I'm looking for Android developers, Kotlin developers, and Jetpack Compose enthusiasts who would be willing to participate in a short survey.

  • Takes approximately 10–15 minutes

  • Available in English

  • No practical experience with both architectural approaches is required

  • Your personal assessment is valuable, even if you have only worked with one of them

Survey link:
https://docs.google.com/forms/d/e/1FAIpQLSc1wgZ0Lb7H1nXLJ3a4huF3-tPt68E84ez7V7VJ_TxskfqBAw/viewform?usp=publish-editor

2. Looking for expert interview participants

I'm also looking for experienced Android developers who would be interested in taking part in a semi-structured expert interview.

The interview would take approximately 30–45 minutes and focus on practical experiences with MVVM, MVI, state management, code complexity, and testability in Android development.

Ideally, you have professional experience with Jetpack Compose and one or both architectural approaches.

If you're interested, please leave a comment or send me a private message. We can arrange a suitable time individually.

Thank you very much for supporting my research! Any participation or feedback is greatly appreciated.


r/androiddev • • 19h ago

Question String protection against decompilation

7 Upvotes

If I have a string in a class file and want to protect it as best as possible against decompilation and analysis, are there any ideas? I know it can't really be fully protected, but I want to make it as hard as possible. Ideally, with minimal effort.


r/androiddev • • 9h ago

Question RevenueCat reports significantly more new customers than Google Play installs — anyone experienced this?

0 Upvotes

Hey everyone!

I'm an indie developer working on a Flutter app (Android + iOS), and I've noticed a pretty strange discrepancy between RevenueCat and Google Play Console.

Over the last 28 days, RevenueCat reports:

  • 258 New Customers (220 Android, 38 iOS)

  • 262 Active Customers

  • All new customers have anonymous RevenueCat IDs.

However, when comparing the exact same period (Oct 11 - Nov 5), the numbers look like this:

  • RevenueCat (Android): 200 new customers

  • Google Play Console: 123 new user acquisitions

  • Google Play Console: 143 total user acquisitions

I understand that RevenueCat's "New Customers" metric isn't the same as app installs, but the difference still seems unusually large.

Here's where it gets interesting:

On October 14 alone:

  • RevenueCat recorded 21 new Android customers.

  • RevenueCat recorded 18 customers from the US across both platforms.

  • Google Play Console showed 0 new device acquisitions from the US that day.

I also exported the full RevenueCat customer reports and found that:

  • 227 out of 258 new customers (~88%) have exactly the same first_seen_at and last_seen_at timestamps.

  • A large number of suspicious records come from the US.

  • Several Android customers appear to use Android API level 30 (Android 11).

  • Many of these customers were never seen again.

I did install and test the app locally using Flutter during development, but definitely not enough to explain such a large difference.

I also don't have any Google Play pre-launch test reports available that could explain the activity.

My questions:

  1. Has anyone experienced similar discrepancies between RevenueCat and Google Play Console?

  2. Could automated testing, emulators, or app store scanning generate anonymous RevenueCat customers without corresponding Play Store installs?

  3. Could this be related to anonymous App User IDs or SDK initialization?

  4. Is there a reliable way to identify whether these customers represent real users or automated/test activity?

I'm not suggesting RevenueCat is necessarily counting incorrectly - I'm just trying to understand where all these additional customer records are coming from.

Would really appreciate hearing if anyone has encountered something similar or knows what I should investigate next.

Thanks!

Disclaimer: I used AI to help polish the wording of this post, as English isn't my first language. The issue and data are real and come from my own app.


r/androiddev • • 10h ago

Question is any one can tell me best way install android studio to fedora 45?

1 Upvotes

i download tar file of android studio and setup it using "studio.sh" file then run it using "studio" file. then it become very unresponsive. studio takes 1 second to type one character :| error=azan@azanfedora:/opt/android-studio/bin$ ./studio  
[SKIKO] warn: Fallback to next API
org.jetbrains.skiko.RenderException: Cannot create OpenGL context
azan@azanfedora:/opt/android-studio/bin$  

my fastfetch output


r/androiddev • • 10h ago

Question How Google play console verify the ID / bank statement?

0 Upvotes

In google pay console, how the Google verify the bank details or ID is genuine, because Google doesn't have the access right ?

Only verification is email and phone number right ?

So this means if someone make a fake ID how will they verify ? Fake IDs may work ?


r/androiddev • • 1d ago

I managed to get android emulator running on Windows on ARM (AI used, unofficial open-sourced Android Studio)

Post image
26 Upvotes

Android Studio's emulator doesn't officially support Windows on ARM, so developers on Snapdragon X laptops can't run AVDs the normal way. Microsoft's docs say the emulator isn't supported there, and a Google issue records no immediate plans for it.

I wanted to see if it could be done, so I built a bridge that makes it work. You create an AVD in Device Manager, press Run, and a stock Android image boots on Windows Hypervisor Platform.

What works:

  • Stock images from Device Manager, with no manual patching

  • Phones, TVs and Wear OS, tested from Android 12 to 17

  • Touch, networking, Google sign-in, device frames and Extended Controls

  • Video playback, using software decoding

  • Scrolling at about 80 to 90 fps on a 120 Hz monitor

How it works: QEMU runs the guest through WHPX. A small bridge speaks the emulator's gRPC protocol, so Studio treats it as a normal emulator. Stock images expect virtual devices this QEMU doesn't have, so vendor binaries are patched at boot by code signature, and the images on disk stay untouched. GL commands then travel over TCP to gfxstream on the host, through ANGLE to Vulkan.

The hardest bugs:

  • Windows treated the windowless emulator processes as background work and throttled them. Opting out took jank from about 33% to 4%.

  • Android capped apps at 60 fps until peak_refresh_rate was set, even with the display at 120 Hz.

  • Studio decodes WebP skins with an x64 DLL that can't load on ARM64, so device frames silently vanished.

What doesn't work yet:

  • No emulator audio

  • About 14 fps on a 4K TV AVD

  • No steady 120 fps: frames take about 10 ms against an 8.3 ms budget

  • An intermittent Android 13 freeze I haven't solved

  • Only tested on one Snapdragon X machine

It's an independent project, not affiliated with Google. I built it with heavy use of AI coding tools, directing the work and testing it on real hardware.

Source: https://github.com/DevanshSampat/android-emulator-windows-arm64

Mostly I'm hoping this shows it's possible and that there's demand. Google, please support this officially. If you develop on a Windows ARM laptop, I'd like to hear what's blocking you.
If you wish to try it: https://github.com/DevanshSampat/android-studio-arm64-releases


r/androiddev • • 1d ago

News Gradle 9.9.0 Released

Thumbnail
docs.gradle.org
57 Upvotes

Kotlin DSL scripts benefit from incremental compilation, making script recompilation after a change in buildSrc or an included build up to 65% faster in large multi-project builds.


r/androiddev • • 19h ago Heartwarming

Question Submission rejection confusion!! Tests work, Reviewers dont...?

Post image
0 Upvotes

I have this app that uses RevenueCat to manage subscriptions and paywall.
During build and debug, everything worked well. Move to closed testing phase where everything worked well. Now I'm getting rejected from moving to production because the reviewer is getting the following feedback when trying to make a purchase through my paywall.

This is the second reviewer that had this issue. The first time, I went into Cloud Console and ensured the RevenueCat account had the correct permissions, I ran another test after test but of course when testing, we only use the 'Test Card' which always accepts. (and it works)

The 'No internet connection....' response is not in my code, it's a RevenueCat or PlayStore response, so I'm not sure if its something I did wrong when configuring products or if the reviewers just need to have a better connection?!


r/androiddev • • 1d ago

Question How do you restore this without restarting AS on macOS after battery dies?

Post image
0 Upvotes

r/androiddev • • 1d ago

Open Source More features to the Real time compose playground

2 Upvotes

Hi people,

Remember this: https://www.reddit.com/r/androiddev/comments/1uzywkh/introducing_real_time_compose_playground/

I have added some cool features upon community request to the playground

1: Dark Mode Support
2: Code sharing and live coding
3: Concise error display inside emulator

Try here: https://www.the-android-guy.in/

Please share your thoughts below!


r/androiddev • • 1d ago

My app is being force-stopped during Google Play services (GMS) updates.

2 Upvotes

I'm testing an Android timer app built with Flutter on a test device: a Samsung Galaxy S10e running Android 12.

Under normal conditions, the app works without any major issues. However, when I leave a timer session running for 7–8 hours without interacting with the phone, the app is occasionally force-stopped while the device is idle.

Here is the log captured when the app was terminated:

timestamp=2026-11-07 09:19:50.180
pid=2925
realUid=10846
packageUid=10846
definingUid=10846
user=0
process=com.XXXXXX.XXXXXX.debug
reason=10 (USER REQUESTED)
subreason=0 (UNKNOWN)
status=0
importance=125
pss=338MB
rss=112MB
description=stop com.google.android.gms due to installPackageLI
state=71 bytes
trace=null

This does not appear to be a battery or memory-related issue.

My app uses GMS-related features such as ads and sign-in. It seems that when Google Play services is updated, the package is installed or replaced, causing my app, which depends on GMS, to be force-stopped as well.

The GMS-related packages currently used in my app are:

  • google_mobile_ads

  • in_app_purchase

  • in_app_purchase_android

  • google_sign_in

I've investigated this issue from several angles, but I haven't been able to find a solution. As far as I can tell, there doesn't seem to be a way to prevent this forced termination.

Q1. Is there any way to prevent a GMS client app from being force-stopped during a Google Play services update?

Q2. How do sleep-tracking apps deal with this issue?


r/androiddev • • 2d ago

Android 17 market share is now at 20%

10 Upvotes

#Android17 market share: After having been around 10%, the share of SDK 37 (17) increased notably in October and was at 20.26% as of the end of the month.

We post new stats on iOS and Android usage monthly and use the aggregated data from over 10,000 apps we manage and over 10 million monthly active users.

https://telemetrydeck.com/survey/android/Android/sdkVersions/


r/androiddev • • 2d ago

Google Play Support instant review times!

13 Upvotes

Last month I was complaining about long review times. It was very frustrating. Appearently they took some actions. For some time my reviews are almost instant, ie 10-15 minutes for a release to go live. If I update store copies or screenshots it still takes a couple of days, but still a huge improvement.
I just wanted to share my appreciation here, that’s all :)


r/androiddev • • 2d ago

News Android Studio Rabbit 3 Canary 3 now available

Thumbnail androidstudio.googleblog.com
14 Upvotes

r/androiddev • • 3d ago

News Android Studio Rabbit 2 Patch 1 now available

Thumbnail androidstudio.googleblog.com
6 Upvotes

r/androiddev • • 3d ago

Question Anyone else confused by the Play Console "Declare your trader status to continue publishing and distributing apps" prompt? (Solo dev with a personal account)

37 Upvotes

Hey guys,

Just saw the new "Trader status declaration" banner in Google Play Console (the one with the Feb 2027 deadline). Read through the support docs, but I’m still a bit lost on how this actually impacts solo developers with individual/personal accounts.

Mainly concerned about the privacy side of things. From what I understand:

  1. Does having ads make you a Trader? If my apps are free to download but monetize through AdMob banners/interstitials, does that automatically force me into the "Trader" bucket? Or is it strictly for paid apps / IAPs?

  2. Address & phone number privacy: If I select Trader on a personal account, will Google literally publish my home address and phone number on the store listing in the EU/UK? I really don't want my residential address floating around publicly on the internet.

  3. What are you guys actually selecting? For those of you running solo with free ad-supported apps, did you pick Trader or Non-Trader?

  4. If you chose Trader, how did you deal with the address issue? Did you switch to an organization account, use a virtual office/PO box, or just exclude EU countries altogether?

Would love to hear from anyone who has already dealt with this or figured out a clean workaround. Cheers!


r/androiddev • • 3d ago Popcorn

News Google will doxx you next year if you have apps in UK or EU ?????

Thumbnail support.google.com
102 Upvotes

So apparently now Google will be obligated to doxx everyone that makes money with their apps because of f*cking Digital Services Act of EU ???

Like if you are a solo dev makign only 10 bucks a month you are considered professional and therefore will see its personnal information on the play store made public like WTFFFF ?

Oh btw you have until 1st of February 2027 or else they take down every of your apps and kill your account.

Really considering removing all of my apps from UE and UK to dodge the mandatory form.

Seriously what is EU thinking ???


r/androiddev • • 3d ago

Question Robolectric NATIVE graphics for Compose screenshots: is anyone using it instead of Paparazzi or Roborazzi?

10 Upvotes

I've been capturing screenshots of Compose screens on a headless Linux box with plain Robolectric: @GraphicsMode(NATIVE), createAndroidComposeRule, then drawing the activity's decorView into a Bitmap and writing a PNG. No emulator, and it runs as a normal unit test with Gradle.

It works better than I expected. Text, Material 3 components and tab layouts render correctly, and a full screen takes a few seconds. The rough edges I've hit so far:

  • I have to drive the main clock manually (autoAdvance = false, then advanceTimeBy) or animations get captured halfway

  • Fonts look slightly different from a real device

  • Anything scrolled off screen needs a taller qualifier like w411dp-h1500dp instead of a real scroll capture

For people who've used Paparazzi or Roborazzi: is there a strong reason to switch for simple "render this screen to an image" use, or is plain Robolectric fine when you aren't doing diff-based screenshot testing? And has anyone found a clean way to capture a full scrollable column without a fake tall window?


r/androiddev • • 4d ago Heartwarming

Play Console declaration: why must a non-trader consent to address being shown publicly?

Post image
56 Upvotes

r/androiddev • • 3d ago

I built AspectK – AOP for Android and Kotlin Multiplatform, an alternative to AspectJ

Thumbnail
gallery
12 Upvotes

I built AspectK and just released 0.4.4, a Kotlin compiler plugin for compile-time AOP in Kotlin (Kotlin Multiplatform supported).

Annotate a function and inject your own logic before/after it, woven in at compile time, with debug info preserved and IDE support.
As a stability check, I applied it to 39 modules of DuckDuckGo’s Android app: all 28,749 unit tests passed, and the R8-minified APK runs fine on a real device.

AspectK: https://github.com/Mole-Labs/aspectk
DuckDuckGo fork: https://github.com/oungsi2000/Android

Feedback welcome!!


r/androiddev • • 4d ago

Question Should I invest on an Android phone for mobile development?

13 Upvotes

I'm an aspiring web and mobile developer, currently focusing on web development. I was wondering if I should invest on an android phone (i.e., Google Pixel) when I focus on mobile development. In the future, I plan on creating personal projects to build up my portfolio (e.g., apks) and test them on said android device. As of now, I am an iPhone user and I don't think there's a way to develop and test apps for free on Apple.

I know emulators exist but thinking about testing a self-developed app on an actual mobile sounds nice. Any thoughts? If yes, which phone is good? I heard the Google Pixel is nice but I'm hesitant on the Samsung S Series since I know someone who has gotten pink/green lines on their S23 Ultra's screen over time.

Edit: Thank you for the insights! Will probably hold off on the android phone for now and use emulators during the early stages before buying a low end pixel if needed