Android Developers Backstage

Android Backstage, a podcast by and for Android developers. Hosted by developers from the Android engineering team, this show covers topics of interest to Android programmers, with in-depth discussions and interviews with engineers on the Android team at Google. Subscribe to Android Developers YouTube → https://goo.gle/AndroidDevs

From natural language to UI tests: A deep dive into Journeys for Android Studio

Hosts Tor and Chet are joined by Adarsh Fernando, a Product Manager, and Ray Buse, a Software Engineer, to discuss Journeys for Android Studio. Powered by Gemini's vision and reasoning, Journeys aims to simplify end-to-end test creation and maintenance by converting the natural language you provide to describe the steps and assertions for each test, resulting in actions and evaluations performed directly on your app. Chapters: 0:00 - Intro 1:46 - Journeys: New AI-powered testing approach 3:40 - How Journeys Works with Gemini 4:27 - The natural language advantage 5:49 - Real-world use case: Google Maps 6:53 - Debugging with AI reasoning 8:08 - Why Journeys is important: Bridging the testing gap 9:56 - Journeys and End-to-End Testing 12:18 - Performance and Cached Journeys 24:14 - Android Studio and Firebase integration 25:27 - The development workflow 31:22 - AI for everyone: Beyond end-to-end testing 33:28 - Looking ahead: Feedback and the future  Resources: Journeys for Android Studio → https://goo.gle/4m9YOr3 App Testing (Android) → https://goo.gle/3HVKTqB   Tor on Bluesky → https://goo.gle/3ViCAYS Chet on Bluesky → https://goo.gle/4gzpccM Ardash on Bluesky → https://goo.gle/47JGNw9

10-14
26:23

Android developer verification

To protect users from malware and scams, Android has announced a new layer of security: developer verification. While this is nothing new for Google Play Store apps, Android is extending this to the entire Android ecosystem. Host Tor is joined by Matthew, Patrick, Naheed, and Raz to discuss this latest security update that deters bad actors and creates a safer environment.  

09-30
45:22

Autofill in Compose

In this episode of Android Back Stage, Hosts Tor, and Chet are joined by Melba and Ralston, Software Engineers on the Compose Team, to talk about Autofill in Compose. Learn about Autofill services, best practices, and more! Chapters: 0:00 - Intro 0:40 - What is Autofill? 1:21 - Autofill team journey and semantics 2:15 - Defining semantics in Compose 3:29 - Bridging views and Compose for Autofill 4:23 - Developer Experience: Early autofill in Compose 7:02 - Autofill services and communication flow 7:59 - User authentication and multiple autofill services 12:53 - The Autofill flow: From tap to fill 21:56 - Handling list types and saving credentials (commit) 30:11 - The "Asteriks" bug and semantics refractor 31:09 - Performance improvements in Autofill 37:48 - Compose's architectural advantages (composition over inheritance) 40:30 - Best practices and future improvements  

08-13
44:22

Back it up, bring it back: No data left behind

It can be a draw when setting up a new device. Some info transfers, while some don't. Learn how developers can ensure the best user experience when people backup and restore an Android device. Hosts Tor and Chet are joined by Graham and Piyush on the Android Consumer Experience team  and Alon on the Android Studio team to discuss Android backup and restore.   Chapters: 0:00 - Introduction & the user pain point 1:38 - Why backup fails: Developer challenges 4:00 - Evolution of backup testing: From scripts to Android Studio 7:15 - Beyond testing: Backup for developer workflow 8:50 - Cross-device backup & GMS core integration 10:55 - Understanding backup types: Devices vs. Cloud 14:55 - Data categories & developer control 16:05 - System-level backup: Permissions & credentials 18:35 - Default backup pitfalls & key-value agents 28:15 - Database migrations & backup stress testing 32:04 - Automated testing framework 41:02 - Recap & feedback channels

07-10
48:50

Bot to the Future: Two Years Later

Join Tor and Siva Velusamy and Sandhya Mohan from the Android Studio team to learn about the latest updates to Studio Bot (Gemini in Android Studio) that dropped at Google I/O 2025 including Agent Mode. Building on their conversation from two years ago about the Studio Bot, they explore Gemini's role in every stage of development, from design to building, testing, and maintenance, the future of coding companions, and more. Studio Bot podcast episode → https://goo.gle/3ZM0Wwx     

06-13
46:27

​​Kotlin Multiplatform: Have your code and eat it too

Software Engineers Dustin Lam and Yigit Boyar join host Tor Norbye to chat all about Kotlin Multiplatform.  Resources: Tor's Bluesky → https://goo.gle/4iLXEAg  Yigit's Bluesky → https://goo.gle/4dmsYVj

05-07
58:08

Linting on the Side of Caution: Safety & Security

What is app safety for Android? What is the Android team working on to ensure developers and users alike enjoy safe and reliable apps? Watch along as Tor Norbye, Chet Haase, Romain Guy, Theresa Khuu, Naheed Vora take a deep dive backstage and discuss what's new in the Android safety space.   Resources: Enhanced Tools for Secure & Efficient Development → https://goo.gle/42lo3i8   Watch more Android Developers Backstage → https://goo.gle/adb-podcast Subscribe to Android Developers → https://goo.gle/AndroidDevs    #Featured #Android #AndroidDevelopersBackstage Speakers: Tor Norbye, Chet Haase, Romain Guy, Theresa Khuu, Naheed Vora

04-10
50:31

Episode 213: Compose runtime and performance

In this episode, Tor and Romain chat with Leland and Chuck from the Compose team about performance -- recent optimizations, upcoming optimizations, and challenges. Leland: @intelligibabble.bsky.social Chuck: @chuckjaz.bsky.social Tor: @tornorbye.bsky.social Romain: @romainguy, @romainguy.dev, romainguy@androiddev.social Catch videos on YouTube → https://goo.gle/adb-podcast   Subscribe to Android Developers  → https://goo.gle/AndroidDevs  #Featured #Compose #AndroidDevelopersBackstage   

03-04
56:56

Episode 212: Happy birthday, Android Studio!

In this episode Chet, Romain and Tor chat with Xav and Jamal from the Android Studio team to talk about the history of Android's IDE.   Chapters: Intro (00:00) Topic of the day - Android Studio releases (00:59) What was before Android studio? (2:33) Eclipse (7:22) Jamal joins Android (13:56) Android studio 1.0 (16:40) Android studio 1.0 - launch (21:56) Android studio 3.0 (25:17) Differences after the Kotlin announcement (28:02) Studio 2.1 big complaints (31:32) Code names in Android (33:23) Favorite versions of Android Studio (38:01) Team growth 2010 - 2017 (41:22) Android Studio 4.0 - motion editor (43:26) Gradle (45:27) Profilers (53:06) Regrets? (54:04) Favorite features? (56:37) Wrap up (59:53) Links: Android Studio → https://goo.gle/36F8fcS  Android Studio 1.0 → https://goo.gle/4h4X68z  Announcing Android Studio → https://goo.gle/3EapKGH    Jamal: https://www.linkedin.com/in/jamaleason Xavier: ducrohet.bsky.social  Romain: @romainguy, @romainguy.dev, romainguy@androiddev.social Tor: threads.net/@tor.norbye and tornorbye@androiddev.social Chet: @chethaase, threads.net/@chet.haase, and chethaase@androiddev.social   Catch videos on YouTube → https://goo.gle/adb-podcast   Subscribe to Android Developers  → https://goo.gle/AndroidDevs    #Featured #Android #AndroidDevelopersBackstage  

01-24
01:00:50

Episode 211: Rules about performance tools

In this episode Chet, Romain and Tor chat with Shai Barack about how the Android platform team studies performance and understands system health - and what is system health anyway? We talk about measuring performance, deciding trade-offs, and our favorite tools such as Perfetto, Compiler Explorer, and Android Studio's Memory Profiler.   Chapters: Intro (00:00) System health (0:27) Efforts to make apps more efficient (3:35) Telemetry data (5:59) Trade offs between long battery life and good performance (8:21) Scheduling groups (10:38) Static drain (13:32) Collaborating with App developers vs operating system (19:10) High refresh rates (23:26) Reach vs engagement (32:02) What tools does your team use to optimize performance? (34:10) Godbolt.org (37:09) Demystifying (39:39) The best tools are multi-player (43:52) R8 or R-Not? (45:42) Optimizing for feature sets (48:05) Tools, not Rules (50:08) What are the tools I should be aware of as an app developer looking to upscale performance? (54:36) Allocation tracker (55:37) Open source tools (57:08) Useful resources for devs to understand various tools (59:04) Final thoughts (1:06:19) Links: Compiler Explorer → https://goo.gle/3Zbq6DV  Perfetto → https://goo.gle/3OtD3UK and https://goo.gle/3B3S3p5  Tools, not Rules  → https://goo.gle/416CyY7    Shai:  Romain: @romainguy, threads.net/@romainguy, romainguy@androiddev.social Tor: threads.net/@tor.norbye and tornorbye@androiddev.social Chet: @chethaase, threads.net/@chet.haase, and chethaase@androiddev.social   Catch videos on YouTube → https://goo.gle/adb-podcast   Subscribe to Android Developers  → https://goo.gle/AndroidDevs

11-26
01:10:15

Episode 210: Studio Jewelry

In this episode Chet, Romain and Tor chat with Sebastiano about how the Android Studio team builds UIs. We talk about how Compose for Desktop is used in parts of Android Studio and how the Compose Markdown renderer available in the Jewel library makes Studio Bot tick.   Chapters: Intro (00:00) Android Dev UX team (00:39) What kind of libraries and languages are used to build Android studio? (1:52) Swing (2:53) Reactive and declarative programming models (8:25) SKIA for Kotlin (10:01) Jetpack Compose widgets (11:54) Jewel (13:07) Text rendering across platforms (15:51) Differences in behaviors (17:40) Support for markdown files (20:26) What is markdown? (21:25) Swing and html (25:45) Selection handling in StudioBot (28:46) Boosting productivity with Compose (30:40) Standalone vs plugin artifacts (34:29) The difference between Jewel & Swing (35:30) HTML vs Markdown (39:31) Markdeep (41:53) Jewel's Markdown API (43:46) Where to find Jewel? (46:54) Sebastiano's podcast - Code with the Italians (47:34) Final thoughts (49:13)   Links: Jetpack Compose Compose Multiplatform, for Desktop  Jewel Jewel Markdown Renderer   Sebastiano: ​​https://github.com/rock3r, https://codewiththeitalians.it/ Romain: @romainguy, threads.net/@romainguy, romainguy@androiddev.social Tor: threads.net/@tor.norbye and tornorbye@androiddev.social Chet: @chethaase, threads.net/@chet.haase, and chethaase@androiddev.social   Catch videos on YouTube → https://goo.gle/adb-podcast   Subscribe to Android Developers  → https://goo.gle/AndroidDevs 

10-24
50:38

Episode 209: Compose animations

In this episode Chet, Romain and Tor chat with Doris Liu from the Compose team about animations in Compose -- covering everything from the basic primitives up to the recently added Shared Element Transitions.   Chapters: Intro (00:00) Animation capabilities of Compose (1:06) Different types of animation specs (3:43) Layers of functionality, transitions (7:49) TargetBasedAnimation (9:48) Vectors & velocity of color change (12:43) Second layer parallel to animation spec (16:39) Animation interruptions (18:48) Motion layout problem-solving (20:19) Both scale and move in question (25:45) Different mental models for layout animation in Compose vs. View (26:20) Shared element (31:05) Are there things you wish more people were aware of? (34:19) What's the tooling story for this? (41:57) What is Look Ahead? (43:16) All software is regret (48:49) New API: Modifier.animateBounds (51:52) How to reach Doris – leave a comment (55:57) Motion Frame of Reference Placement (57:29) Wrap up (59:10) Links: Shared element tutorial → https://goo.gle/3XrGYp5  Shared element talk → https://goo.gle/47tm3qm  A quick guide to compose animations → https://goo.gle/3Tm853p  The API layers except the highest level APIs we chatted about in the podcast → https://goo.gle/3MGsiNE Doris: @doris4lt Romain: @romainguy, threads.net/@romainguy, romainguy@androiddev.social Tor: threads.net/@tor.norbye and tornorbye@androiddev.social Chet: @chethaase, threads.net/@chet.haase, and chethaase@androiddev.social   Catch more Android Developers Backstage on YouTube → https://goo.gle/adb-podcast    Subscribe to Android Developers YouTube → https://goo.gle/AndroidDevs 

09-12
59:36

Episode 208: Micro optimizations

In this episode Tor and Romain find themselves without a guest and decide to chat about micro optimizations and writing custom tools. Tor and Romain Chapters: Intro (00:00) Micro optimizations (00:32) Kotlin explorer (3:25) Avoiding object allocations (6:49) Code Inefficiencies (8:10) Compilers (12:13) Understand assembly with AI (18:39) Layout opt (21:20) Programmers writing tools (21:52) char.isBlank (25:35) Lint checks (27:59) Companion objects (29:40) Java assertion mechanism (32:00) Hash maps (35:13) When to micro optimize and when not to (43:46) Benchmarking (47:26) New optimizations (48:46) Wrap up (50:46)   Romain: @romainguy, threads.net/@romainguy, romainguy@androiddev.social Tor: threads.net/@tor.norbye and tornorbye@androiddev.social   Catch videos on YouTube → https://goo.gle/adb-podcast   Subscribe to Android Developers  → https://goo.gle/AndroidDevs 

07-18
51:12

Episode 207: AI development assistance

In this episode we talk with Kathy Korevec from the AIDA team at Google about AI assisted developer tools, such as Android Studio -- which is using Gemini AI models provided by AIDA. Romain, Kathy, and Tor Kathy:  twitter.com/simpsoka Romain: @romainguy, threads.net/@romainguy, romainguy@androiddev.social Tor: threads.net/@tor.norbye and tornorbye@androiddev.social   Check out → https://goo.gle/3wK4EM4    Catch videos on YouTube → https://goo.gle/adb-podcast   Subscribe to Android Developers  → https://goo.gle/AndroidDevs

06-20
52:20

Episode 206: Make it faster

In this episode we cover ADB -- not "Android Developers Backstage", but "Android Debug Bridge", the technology powering device connections. Romain and Tor talk with Fabien Sanglard from the Android Studio team on his work to improve the debug stack -- including the new USB speed detection feature recently unveiled at Google I/O. Chapters: Intro (00:00) You may know Fabien from… (00:50) Applying relevant knowledge to Android Studio (3:28) Communicating with remote devices and debugging (12:18) Accommodating a debugger (13:55) Fixed protocols and how to work around (16:10) What other versions of ADB do you use to get the suite faster? (19:27) Other ways to make the debugger faster  (20:38) The differences between USB cables (21:51) How to find the right cable (30:17) ADB over wifi (32:41) How to detect which usb port is faster on your laptop? (34:46) Complexity of new cables (36:57) Install time of APK's (37:41) New ways of helping full stack devs (45:44) Final thoughts (49:19) Viewer questions (57:54) Romain: @romainguy, threads.net/@romainguy, romainguy@androiddev.social Tor: threads.net/@tor.norbye and tornorbye@androiddev.social Fabien: @fabynou,    Check out → https://goo.gle/3wK4EM4    Catch videos on YouTube → https://goo.gle/adb-podcast   Subscribe to Android Developers  → https://goo.gle/AndroidDevs 

05-22
01:00:52

Episode 205: Time for Playtime

In this episode, Tor, Romain, and Chet talk with Aurash Mahbod from the Play Games team at Google -- covering trends in mobile games, challenges for Android games developers, console games, and more!   Chapters: Intro (00:00) What's Aurash working on currently? (02:40) How much is Play store providing users with content based on previous interests? (05:29) Longstanding games vs new games (08:34) Mobile gaming vs console (10:07) Are there stats on what type of games people are playing? (18:07) Difficulties and solutions for transitioning games from various devices (21:14) Movie corner - War Games (25:15) How does Play console help devs optimize engagement? (26:23) What is the breakdown of tools that devs actually use for games? (27:53) Reducing the backend costs for devs (30:18) Where does loyalty content surface? (34:28) Balancing add load (35:16) Cloud saves (38:18) Aurash's history with Play store (42:18) Wrap up (42:58) Romain: @romainguy, threads.net/@romainguy, romainguy@androiddev.social Tor: threads.net/@tor.norbye and tornorbye@androiddev.social Chet: @chethaase, threads.net/@chet.haase, and chethaase@androiddev.social Aurash: https://twitter.com/aurash - @aurash Catch videos on YouTube → https://goo.gle/adb-podcast 

03-26
46:50

Episode 204: Fan'otations

In this episode, Tor, Romain, and Chet talk about one of Tor's favorite topics: Lint! Specifically, we talk about Lint checks and the annotations that use them to enable better, more robust, and more self-documenting APIs. Lint: It's not just for pockets anymore. Chapters: Intro (00:00) Lint checks for annotations (01:50) Lint checks in Android (05:38) Logic checks (07:34) Color representations (10:01) How does lint know the type of integer? (14:40) Kotlin annotations (17:19) Unsigned (20:10) HalfFloat (22:25) Thread annotations (25:12) @CallSuper (28:18) LayoutOpt (30:26) Lint checks in AndroidX (32:00) Restrict to annotation (36:45) Writing your own custom Lint checks (39:51) Lint testing framework (43:26) Kotlin buildList Lint check example (45:25) @Discouraged (48:15) Wrap up (50:08) @Deprecated Chet (50:50)   Romain: @romainguy, threads.net/@romainguy, romainguy@androiddev.social Tor: threads.net/@tor.norbye and tornorbye@androiddev.social Chet: @chethaase, threads.net/@chet.haase, and chethaase@androiddev.social   Catch videos on YouTube → https://goo.gle/adb-podcast   Subscribe to Android Developers  → https://goo.gle/AndroidDevs 

02-21
52:33

Episode 203: (W)rap

In this episode, Tor, Romain, and Chet talk about some of the many things that happened this year in the world of Android development, including new devices and form factors, tool improvements, AndroidX features and libraries, and Jetpack Compose releases. And any tech podcast would be remiss without mentioning AI/ML, so we talk about that too. Tor, Romain and Chet Chapters: Intro (00:00) Google engineers vs Android (00:57) Big changes of 2023 intro (3:03) AI (3:38) Programming with AI (5:08) Writing with AI (8:52) New devices from Android - Pixel fold (12:31) Pixel watch (18:50) Bard (19:37) Changes in device release times (20:23) Major changes in devices vs incremental updates (21:42) Camera (22:40) Platform developments - mainline modules (24:03) More testing for Android (25:12) Flaky tests (26:55) Jetpack compose features (32:32) RTO (38:00) Shapes library and KMP (42:42) Final thoughts on big events of 2023 (45:03) Studio build improvements (46:43) Baseline profiles (49:21) Listener mail (50:45) Where has Chet been? (52:46) Metalava question (55:46) Wrap up wrap up (57:00)   Romain: @romainguy, threads.net/@romainguy, romainguy@androiddev.social Tor: threads.net/@tor.norbye and tornorbye@androiddev.social Chet: @chethaase, threads.net/@chet.haase, and chethaase@androiddev.social   Catch videos on YouTube → https://goo.gle/adb-podcast   Subscribe to Android Developers  → https://goo.gle/AndroidDevs

12-21
58:18

Episode 202: AndroidX, Gradle and Metalava

In this episode, Tor and Romain chat with Aurimas Liutikas from the AndroidX team. Topics include performance tuning the AndroidX Gradle builds using configuration caching, local caching and remote caching, as well as tracking API compatibility using the Metalava tool. Aurimas, Romain and Tor   Romain: @romainguy, threads.net/@romainguy, romainguy@androiddev.social Tor: threads.net/@tor.norbye and tornorbye@androiddev.social Aurimas: androiddev.social/@Aurimas and www.liutikas.net/blog-posts   Catch videos on YouTube → https://goo.gle/adb-podcast    Subscribe to Android Developers  → https://goo.gle/AndroidDevs  

11-01
53:56

Episode 201: Firebase in Android Studio

In this episode, Tor and Romain chat with Greg Baker and Joe Baker-Malone about exciting new Android Studio features made possible by Firebase integration. Physical device streaming allows you to connect remotely to physical devices hosted in Google's secure data centers and use them for all your development needs. We also explore other time saving features like the ability to go from a crash report directly to the correct line of code, even across git branches.   Tor, Romain, Joe, Greg   Links: Android Device Streaming from Android Studio feedback form App Quality Insights and Firebase Crashlytics Romain: @romainguy, romainguy@threads, romainguy@androiddev.social Tor: tor.norbye@threads and tornorbye@androiddev.social Greg: @bakergo@fosstodon.org  

09-21
44:53

Lucas Parrish

Recently I faced the need to hire qualified developers for my project and decided to use the https://talmatic.com/hire-polish-programmers/ website. I found a section dedicated to Polish programmers and was pleasantly surprised by the variety of offers. The platform presented many specialists with different skills and work experience.

10-23 Reply

Recommend Channels