开发与工程 jetpack-composexml-migrationandroid-uiincremental-migrationinteropcompose-preview

XML View 到 Jetpack Compose 迁移技能

以 10 步结构化流程,将 Android XML 布局安全、逐增量地迁移为 Jetpack Compose,确保视觉一致。

FollowSkills 评估 · FSRS-2.0
不推荐
47/ 100 五分制 2.4 / 5
1 2 3 4 5 6
1信任安全16 / 25 · 3.2/5

技能提供了分步流程,明确要求用户确认(步骤3),并要求在迁移前检查项目构建状态。它限定了变更范围(不迁移整个主题,不修改非UI代码)。但未说明如何处理敏感数据或回滚,也未提供数据流透明性。依赖引用不可验证。

2可靠稳定6 / 20 · 1.5/5

提供了10个步骤和多个参考文档,但关键路径依赖外部资源(如截图、测试框架)且未提供自动化测试或示例输出。没有错误处理或失败反馈说明,静态阅读无法验证可运行性。

3适用触发9 / 15 · 3.0/5

目标明确:将XML视图迁移到Jetpack Compose。提供了选择候选XML的准则,但非适用场景边界不清晰(如大型复杂布局、自定义设计系统时是否适用)。未提及中文支持和网络可达性。

4规范维护9 / 15 · 3.0/5

有明确的结构,包含描述、目标、步骤和引用。但缺少安装依赖、版本控制、维护责任、已知限制等说明。元数据中的author为Google LLC,但未验证。

5有效结果5 / 15 · 1.7/5

描述了完整流程,但无示例或验证输出,静态阅读无法确认结果正确性。输出(生成的Compose代码)需要用户自行整合和测试,直接可用性有限。

6证据核验2 / 10 · 1.0/5

提供了步骤和引用文档,但无测试用例或CI结果,无第三方执行证据,关键声明(如像素级视觉一致性)无法验证。

证据充分度: 评估于 2026年8月7日 审查版本 28822b2306f3
上游仓库在本次评估后已有新提交;当前评分仍对应所示审查版本,可能尚未覆盖最新改动。
使用前请注意
  • 静态评估,未执行验证;实际效果可能因项目而异,需用户自行测试。
  • 技能依赖外部参考(如developer.android.com)和用户提供的截图,功能可能受网络和用户输入影响。
  • 未提及失败处理或回滚机制,风险较高。
  • 迁移步骤可能引入视觉偏差,需谨慎验证。
查看完整评分方法 →

这个 Skill 能做什么,适合哪些场景?

该技能为将单个遗留 XML View 迁移到 Jetpack Compose 提供了一套完整的 10 步方法,涵盖从候选布局识别、项目分析、计划制定,到依赖配置、主题设置、布局转换、验证以及最终的 XML 清理。它专注于 UI 迁移,不涉及业务逻辑,并强调视觉上的逐像素一致性和与现有代码的互操作性。技能基于 Android 官方最佳实践,由 Google LLC 维护,并以 Apache 2.0 许可证发布。

分析项目结构,识别适合迁移的 XML 布局;读取构建文件(如 build.gradle 或 libs.versions.toml)以检查和配置 Compose 依赖及编译器;捕获或获取 XML UI 的截图作为视觉参考;根据项目现状配置必要的 Compose 主题;将 XML 布局转换为 Compose 代码,并生成 Compose Preview 以供视觉验证;替换原有 XML 的使用处;对比截图与 Preview 进行验证,并编写 Compose UI 测试;最后删除冗余的 XML 文件和旧测试。

  1. Android 开发者需要将项目中的单个 XML 布局渐进式迁移到 Compose,而无需一次性重写整个 UI。
  2. 开发团队希望保持现有 View 系统与 Compose 的互操作性,逐屏幕迁移以降低风险。
  3. 需要确保迁移后 UI 视觉上完全一致,且不丢失现有功能的场景。
  4. 开发环境中无法运行模拟器,但希望通过自动化流程指导完成迁移。
  5. 需要系统性地为迁移过程生成文档和测试的项目负责人。

这个 Skill 有哪些优点和局限?

优点
  • 提供明确的 10 步流程,结构化且可验证。
  • 强调视觉一致性和逐步采用,降低迁移风险。
  • 支持与现有 View 系统的互操作性,保留原有主题和模式。
  • 包含自动生成 Compose Preview 和 UI 测试的要求,便于质量保障。
局限
  • 仅专注 UI 迁移,不处理业务逻辑,可能需额外工作。
  • 过度依赖 Android 官方最佳实践,对非标准自定义 View 支持有限。
  • 所需步骤依赖 Android CLI 和 Android Studio,对无这些工具的开发者不友好。
  • 缺乏明确定义的错误处理机制,遇到不支持的布局时可能无法自动处理。

如何安装这个 Skill?

使用 Android CLI 安装技能到当前项目:

android skills add --skill=migrate-xml-views-to-jetpack-compose --project=.

若未指定项目路径,将安装到默认智能体目录(如 ~/.gemini/antigravity/skills)。

如何使用这个 Skill?

在支持技能调用的 Android 开发环境(如带有 Gemini 的 Android Studio)中,直接请求:"请将我的 layout 文件迁移到 Compose",技能会自动执行分析并输出步骤。需要时提供目标 XML 文件路径或截图;若无法运行模拟器,技能将跳过截图捕获步骤,进行后续迁移。

常见问题

该技能是否支持从 XML 迁移整个项目?
不是,该技能设计为一次迁移单个 XML View,以便逐步采用,降低风险。整个项目迁移需要多次调用。
迁移过程中需要额外的依赖吗?
需要确保项目已配置 Jetpack Compose 依赖和编译器,技能会自动检查并指导设置。
如何确保迁移后的视觉一致性?
技能要求捕获原始 XML 的截图,并在迁移后与 Compose Preview 对比,迭代直到视觉一致。
是否支持自定义 View 的迁移?
技能主要针对标准 XML 布局,对自定义 View 可能需要额外的手动调整,但基本流程仍适用。

同仓库的其他 Skills

均来自 android/skills

相关 Skills