mcpField
A
android-compose-xml-interoperability

android-compose-xml-interoperability

github.com/krutikjain开发1450 次安装31 周前更新
代码仓库

关于 android-compose-xml-interoperability

面向 Android 开发者的技能,指导在同一界面中结合 Jetpack Compose 与 View 系统,并支持渐进式迁移,关注状态、无障碍和渲染行为。

主要功能

  1. 01Compose 与 View 互操作模式
  2. 02渐进式迁移指导
  3. 03状态与副作用实践
  4. 04无障碍和响应式检查
  5. 05通过示例应用验证边缘情况

适用场景

  1. 01在 XML 界面中嵌入 Compose UI
  2. 02从 Compose 入口承载 View 界面
  3. 03规划分阶段迁移到 Compose

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/krutikjain/android-agent-skills --skill android-compose-xml-interoperability

安装后在 Claude Code 中输入/android-compose-xml-interoperability确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
openai.yaml
references/
official-links.md
patterns.md
scenarios.md
scripts/
run_examples.sh

详细介绍

Android Compose 与 XML 互操作

适用场景

  • 请求涉及以下内容时使用此技能:在 fragment 中使用 Compose、在 Compose 中使用 AndroidView、渐进式迁移到 Compose。
  • 主要目标:在渐进式迁移、互操作界面和共享主题的过程中,安全地桥接 Compose 与 View 系统。
  • 当范围扩大时,移交给以下技能:
  • android-viewsystem-foundations
  • android-compose-foundations

工作流程

  1. 确定目标界面属于 Compose、View 系统,还是混合互操作界面。
  2. 选择能满足响应能力、无障碍性和性能需求且摩擦最小的 UI 模式。
  3. 围绕稳定状态、明确的副作用和可复用的设计令牌构建 UI。
  4. 在示例应用中测试长文本、字体缩放、RTL 和窄屏设备等边缘情况。
  5. 移交前通过单元测试、UI 测试和便于截图的检查进行验证。

守则

  • 在添加动画或抽象之前,优先确保状态稳定且渲染行为可预测。
  • 默认遵循无障碍语义、对比度、焦点顺序和触控目标方面的指南。
  • 不要在没有明确互操作边界的情况下混合 Compose 和 View 系统的所有权。
  • 优先开展有测量依据的性能优化,避免过早进行微优化。

反模式

  • 将导航或业务逻辑直接嵌入叶子 UI 组件。
  • 使用会因本地化或动态文本而出问题的固定尺寸。
  • 忽略语义,只播报视觉变化。
  • 不调整思维模型,直接将 XML 模式移植到 Compose。

示例

理想路径
  • 场景:在 XML 示例中嵌入 Compose 任务摘要,同时避免所有权混乱。
  • 命令:cd examples/orbittasks-xml && ./gradlew :app:assembleDebug
边缘情况
  • 场景:在分阶段迁移期间,从 Compose 入口承载基于 View 的界面。
  • 命令:cd examples/orbittasks-compose && ./gradlew :app:assembleDebug
故障恢复
  • 场景:将互操作相关请求与纯 View 或纯 Compose 请求区分开。
  • 命令:python3 scripts/eval_triggers.py --skill android-compose-xml-interoperability

完成检查清单

  • 实现路径明确、精简,并适用于正确的 Android 界面类型。
  • 已执行或更新相关示例命令和基准测试提示词。
  • 当请求涉及相邻技能时,已记录移交信息。
  • 官方参考资料涵盖所选模式,以及主要的迁移或故障排查路径。

官方参考资料

评论

支持 Markdown