top of page

Jamie Sanson
Staff Software Engineer at M&S
Jamie is a Google Developer Expert for Android. In his spare time he likes to build things - from apps, to mechanical keyboards, to brewing systems - and photographs anything and everything. Jamie is currently working as a Staff Software Engineer in the Apps Platform team at Marks and Spencer.
Exploring App Functions
Android 16 introduces App Functions, a novel and mysterious new feature that's largely flown under the radar. This roundtable invites a collaborative exploration of its underpinnings, including the core framework changes, the new AndroidX library support, and practical application development. Using investigative tools and shared knowledge, we will attempt to demystify this feature and propose real-world use cases.
Five Kick-Off Questions
Framework Impact & Architectural Shift: Based on initial public documentation or investigative diving, how fundamentally does the App Functions feature alter the existing Android inter-process communication (IPC) model (e.g., Intents, Services, Content Providers)? Are they a replacement or an extension?
AndroidX Integration & Developer Experience: What new classes, annotations, or dependencies are exposed in the latest AndroidX libraries to support App Functions? From a development perspective, how much boilerplate code is abstracted away, and what is the learning curve for an experienced developer to adopt this new mechanism?
Security and Permissions Model: Given that App Functions likely enable new forms of app interaction, what are the new security implications? Does Android 16 introduce specific permissions or a revised consent flow to govern how one app can expose or consume an App Function from another?
Practical Use Case Brainstorm: Setting aside the "how-to," what are the most compelling, real-world problems that App Functions are uniquely suited to solve? (e.g., Cross-app workflow automation, granular feature exposure without full API integration, etc.) Can we collaboratively propose a small sample application that clearly demonstrates where it would be used in place of older IPC methods?
Investigative Tooling & Discovery: For those who have already looked, what specific lesser-known tools (e.g., $adb shell commands, decompilers, platform code analysis) have proven most effective in divining the hidden mechanics of App Functions? What have you discovered so far that the documentation has not yet covered?
bottom of page