技术实践

淘天以AI和Skills将Android定位服务迁移鸿蒙

应用与实践上下文与知识智能体系统知识库Agent 工具调用Agent Skills编程

概述

穿搭业务需要从 0 到 1 迁移到鸿蒙,团队大部分人不熟悉鸿蒙 API。作者维护了一个鸿蒙依赖分析 Skill,协助 Cursor 理解端侧二方包。以 Android 定位服务迁移为对比案例:方式 1 纯 AI 翻译,模型凭常识猜测枚举,生成 LocationExpires.ONE_MINUTE、FIVE_MINUTE、LocationAccuracy.MID_MODE 等不存在的枚举值且回调位置错误,编译报错 13 个,调试时间无法估计。 方式 2 查 Mega Location 源码 + 人工修正,零编译错误但耗时 40 分钟,且知识留在个人脑子里、下次还要重新查。方式 3 AI + Skills,把领域知识结构化为 AI 友好的表格化 Skill——LocationExpires 枚举映射表(1m→ONE_MIN、2m→SEC_MIN、3m→THR_MIN、4m→FOR_MIN、5m→FIR_MIN,并显式列出 ONE_MINUTE/TWO_MINUTE/FIVE_MINUTE/TEN_MINUTE/MID_MODE 等不存在的枚举值)、定位请求方法对比(Android 的 LocationServiceBridge.requestLocation 回调作独立参数,鸿蒙的 Location.requestLocation 回调在 options 对象内,含 bizName/onSuccess/onFail)与常见陷阱,AI 加载 Skill 后用映射表生成,编译错误 0 个、单服务迁移时间 30 分钟。 分工模型为 AI 负责通用逻辑生成、Skills 提供精准领域知识,闭环为输入(加载 Skills)→ 生成(使用映射表)→ 验证(编译/测试)→ 反馈(问题提炼回写 Skills)→ 沉淀(成功经验记录到 Skills)。