先这样答
鸿蒙生态下开发 Agent,核心差异是分布式能力原生。Agent 的状态可以跨设备流转。比如用户在手机上开始对话,之后可以在车机上继续。这个过程依靠鸿蒙软总线。Android 和 iOS 也可以实现类似体验,但通常需要开发者自己建设同步机制。因此,鸿蒙更适合把 Agent 放进多个设备共同工作的场景。
第二个差异是权限模型和系统服务接口不同。Agent 如果要调用系统工具,就要遵循鸿蒙的权限规则,并使用鸿蒙 API 体系。不能直接照搬 Android 或 iOS 的调用方式。第三个差异是开发栈。鸿蒙主要使用 ArkTS,相关生态相对较新。开发者需要熟悉 ArkTS 的开发方式,也要理解鸿蒙的设备协同能力。回答这道题时,我会把重点放在平台能力和应用场景上,而不是只比较语言差异。鸿蒙 Agent 的机会在于端侧智慧和多设备协同。
面试官会怎么追问
-
「如果手机上的 Agent 对话要在车机继续,关键要解决什么问题?」 关键是让 Agent 的状态能够跨设备流转。鸿蒙把这类分布式能力作为原生能力,并通过鸿蒙软总线支持设备之间的连接。开发者需要围绕鸿蒙的分布式能力设计 Agent 状态,而不是只在单个设备内保存状态。
-
「Agent 调用鸿蒙系统工具时,和调用 Android 或 iOS 的系统服务有什么不同?」 权限模型不同,系统服务接口也不同。开发者要按照鸿蒙的权限规则处理调用,并使用鸿蒙 API 体系。不能假设其他系统上的接口和调用方式可以直接复用。
-
「ArkTS 生态较新,会对 Agent 开发带来什么影响?」 ArkTS 是鸿蒙开发栈的重要组成部分,开发者需要先掌握它的开发方式。生态较新意味着不能只依赖过去在 Android 或 iOS 上形成的开发习惯。面试中还可以结合端侧智慧和多设备协同,说明自己关注鸿蒙 Agent 的平台场景。
回答的坑
- 不要只说 ArkTS 和 Android、iOS 的语言不同,要先讲鸿蒙原生的分布式能力。
- 不要把跨设备同步说成通用能力,要说明鸿蒙依靠软总线,其他系统通常需要自己建设同步机制。
同系列的题