[FR]: Render A2UI returned by AppFunctions in the Testing Agent
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 18/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 领域
- mobile-dev, testing-qa
调研方向
Start with the open questions: whether A2UI returned from an AppFunction is the intended approach, which catalog to target, and the updateComponents.components string-versus-array mismatch in fetchSendMessageDetails (ChatApp). Compare the feature/a2ui-contact-picker branch with main and the androidx.a2ui parser before any design work. Done means a maintainer has confirmed the approach and catalog, with a design agreed for rendering A2UI in the Testing Agent.
由索引模型根据 Issue 内容生成。
描述
Is there an existing issue for this?
- I have searched the existing issues
Describe the problem
The Android Dev Summit keynote shows what looks like a custom app widget inside Gemini. I want to test that kind of flow locally: an app returns UI from an AppFunction, and a host renders it, as Gemini would.
The Testing Agent can't do this today because it doesn't render A2UI on main. I also couldn't find a way to use Gemini Developer Mode with on-device AppFunctions.
Describe the solution
I plan to build this in my fork of the Testing Agent, and I'd be glad to contribute it upstream if it's useful.
@JolandaVerhoef I'm mentioning you because you authored feature/a2ui-contact-picker, which adds an A2UI renderer to the Testing Agent.
First, I'd like to confirm my assumption. The keynote is outside this repo, but do you know how that widget was rendered? Was it A2UI returned from an AppFunction, like fetchSendMessageDetails in ChatApp, or an iframe from a remote MCP server?
If it was A2UI, or A2UI is otherwise the intended approach for AppFunctions, I have two follow-up questions:
- Which catalog should the Testing Agent support? I plan to start with the Basic Catalog. ChatApp uses
comms_catalog_preview, but its URL returns 404. Is a schema available? - Would you accept a PR that adds A2UI rendering to the Testing Agent?
feature/a2ui-contact-pickeris close, but it predates theresourcesformat and uses a hand-written renderer. I'd start frommainwithandroidx.a2ui, which requires compileSdk 37.1 and alpha versions of Compose and Material3.
Additional context
I also noticed that fetchSendMessageDetails sets updateComponents.components to a JSON string, while the androidx.a2ui parser expects an array. Is that intentional?
Code of Conduct
- I agree to follow this project's Code of Conduct
- 主要语言
- Kotlin
- 星标
- 216
- 派生
- 49
- 平均合并
- 1 天 14 小时
- 30 天内合并 PR
- 6
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
android/appfunctions 的其他 Issue
-
documentation
难度 1/5 1 小时以内 新手友好度 90/100
android/appfunctions#66 ·
-
难度 2/5 1-3 小时 新手友好度 78/100
android/appfunctions#62 ·
-
难度 4/5 1-2 天 新手友好度 55/100
android/appfunctions#64 ·
-
[FR]: Testing agent should handle AppFunctionUriGrant results and pass returned images to the model未关闭
难度 4/5 3-5 天 新手友好度 45/100
android/appfunctions#63 ·
-
Clarify production invocation, Android Auto support, and Android 16 fallback in AppFunctions docs未关闭
难度 4/5 3-5 天 新手友好度 52/100
android/appfunctions#51 ·
查看 android/appfunctions 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 86/100
liberation-data/drivine-cypher-spec#67 ·
维护者通常 1 天内回复
-
feature
难度 2/5 1-3 小时 新手友好度 64/100
-
documentation good first issue help wanted P2 roadmap-v4
难度 2/5 1-3 小时 新手友好度 82/100
maziyarpanahi/openmed#5425 ·
维护者通常 3 天内回复
-
难度 2/5 1-3 小时 新手友好度 70/100
OneBusAway/vehicle-positions#250 ·
维护者通常 1 天内回复
-
android cleanup good first issue
难度 1/5 1-3 小时 新手友好度 86/100