鸿蒙版本的小小机器人APP开放源码啦

简介: 笔者将安卓版“小小机器人”APP成功迁移至鸿蒙HarmonyOS 6,实现语音问答、天气查询、四则运算、诗词朗诵等功能。相比安卓需多个第三方库,鸿蒙原生支持定位、网络、语音合成与识别等能力,仅需引入pinyin4js即可,显著降低开发门槛,是入门鸿蒙开发的优质实战项目。

时下各种AI聊天应用争奇斗艳,一个比一个智能,一个比一个贴心。早在2022年出版的《Android Studio开发实战:从零基础到App上线(第3版)》中,笔者就基于Android实现了一个具备初级智能的小小机器人APP,不仅支持简单的问答,还支持问询天气预报,还支持加减乘除四则运算,还支持背诵唐诗宋词名篇佳句,可谓小朋友的贴心玩伴。

《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书作为《Android Studio开发实战:从零基础到App上线(第3版)》的鸿蒙姊妹篇,已将安卓一书的大部分实战项目改造为鸿蒙版本。但在写作鸿蒙一书时,限于时间进度与项目难度,安卓一书的小小机器人项目未能同步改造为鸿蒙版本,成为鸿蒙一书的小小缺憾。

好在笔者并未放弃,在《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》出版之后,一直记得小小机器人的鸿蒙改造事宜。磨磨蹭蹭大半年,终于把安卓版本的小小机器人APP一步步改造成了鸿蒙APP,机器人APP的项目源码与鸿蒙一书的第15章源码放在了一起,具体的源码托管地址为 https://gitee.com/aqi00/harmony/tree/main/chapter15

图15-21.jpg

小小机器人的鸿蒙APP仍然有着简洁的界面,问题输入与答案输出都靠语音交互,但在具体的代码实现上,鸿蒙版本与安卓版本有着诸多不同之处,比如存储方面存在下列区别:

1、对于关系数据库,鸿蒙APP与安卓APP都基于SQLite实现,主要用于保存和读取用户自定义的问答信息,还要保存初始导入的唐诗宋词记录。

2、对于键值对存储,安卓APP采用共享参数SharedPreferences,而鸿蒙APP采用首选项Preferences,主要用于判断机器人APP是否为首次运行。

3、对于文件处理,安卓APP把资源文件放在APP工程的assets目录下,APP运行时要先把assets文件传到沙箱目录,再读取沙箱目录下的资源文件;而鸿蒙APP把资源文件放在APP工程resfile目录下,鸿蒙系统支持在应用安装后自动解压到沙箱路径下,APP可直接读取自动解压后的资源文件。

又如,在定位服务、网络服务、中文转拼音方面,鸿蒙版本与安卓版本存在下列区别:

1、对于定位服务,安卓APP原生仅支持获取当前位置的经纬度信息,若想获取当前位置的详细地址,则需另外调用第三方接口把经纬度转换为地址信息;而鸿蒙APP不仅原生支持获取当前位置的经纬度信息,还支持根据经纬度直接获取对应的地址信息,从而省去了第三方的地址查询接口调用。

2、对于网络服务,安卓APP原生的HttpURLConnection用起来甚是繁琐,往往要调用第三方的网络通信库比如okhttp;而鸿蒙APP原生的http模块已经把常见的HTTP访问操作封装好了,开发者可直接进行接口调用,无需引入三方通信库。

3、对于中文转拼音:安卓APP需引入第三方的pinyin4j库,而鸿蒙APP也需引入三方库pinyin4js,后者相当于前者的鸿蒙平替三方库。

图15-27.jpg

在朗诵诗歌之前,机器人通过诗人姓名与诗歌标题确定是哪一首唐诗宋词,但语音识别的结果文本可能存在同音字,为了避免同音字造成条件匹配失败,可先将中文转换成拼音,再通过拼音判断是否匹配。

再如,在音频播放、语音合成、语音识别等方面,鸿蒙版本与安卓版本存在下列区别:

1、对于音频播放,安卓APP通过原生的MediaPlayer来播放音频文件,而鸿蒙APP通过原生的AVPlayer来播放音频文件。

2、对于语音合成,安卓APP原生的文本转语音仅支持英文,通常要引入第三方的语音SDK才能把中文文本合成为语音输出;而鸿蒙APP原生提供了基础语音服务,可直接通过TextToSpeech模块来实现中文文本的语音合成功能。

3、对于语音识别,安卓APP原生不支持,必须引入第三方的语音SDK才能把中文语音识别为文本输出;而鸿蒙APP原生提供了基础语音服务,可直接通过SpeechRecognizer模块来实现中文语音的文本识别功能。

鸿蒙应用开发2.jpg

根据上述说明可知,鸿蒙系统在实现小小机器人APP时,仅需引入一个三方库pinyin4js,对应的安卓系统实现机器人APP时要引入多个三方库,无疑鸿蒙APP避免了其他三方库的学习和适配工作。

如果您想入门鸿蒙APP开发,或者正在学习鸿蒙开发,小小机器人都是很好的学习项目,不仅用到了多种鸿蒙开发技能,而且兼具实战性和趣味性,对开发者快速掌握鸿蒙开发具有很大的帮助。

目录
相关文章
|
3天前
|
云安全 人工智能 运维
阿里云联动百位企业安全专家,共识Agent防御最佳实践
当Agent成为新员工,你的安全边界在哪里?
1731 2
阿里云联动百位企业安全专家,共识Agent防御最佳实践
|
11天前
|
人工智能 JSON 安全
Fastjson远程代码执行漏洞,阿里云AI安全为您保驾护航
阿里云AI安全产品联动防御Fastjson攻击
2443 13
Fastjson远程代码执行漏洞,阿里云AI安全为您保驾护航
|
11天前
|
人工智能 自然语言处理 数据挖掘
Qwen3.8-Max-Preview深度全解析:2.4万亿参数旗舰MoE模型+Token Plan限时优惠完整落地指南
2026年7月,全新旗舰级混合专家大模型Qwen3.8-Max-Preview正式开放抢先体验,作为通义千问Qwen3系列规格最高、综合推理能力顶尖的新一代模型,该模型总参数量达到2.4万亿(2.4T),是当前线上可调用的原生多模态旗舰模型,综合推理水准对标海外顶级Fable 5模型,在复杂工程开发、长文档深度分析、多步骤智能体自治、跨境多语言创作、海量数据挖掘五大高难度业务场景实现跨越式性能提升。
1172 2
|
9天前
|
人工智能 前端开发 Linux
Codex 桌面版安装 + CC Switch 接入第三方 API 完整教程(2026 最新)
2026最新教程:手把手教你安装Codex桌面版,通过CC Switch v3.17.0一键接入Fenno等国产API(兼容OpenAI Responses格式),跳过账号登录,完整启用代码审查、多步任务与上下文感知功能。零基础友好,全程图文实操。(239字)
907 1
|
13天前
|
人工智能
Qwen3.8抢先体验!正式版即将发布并开源!
千问Qwen3.8即将开源,参数达2.4T,进化速度以“天”计,实力媲美Fable 5。预览版Qwen3.8-Max已上线阿里Token Plan等平台,限时优惠:日间Credits低至1折,夜间更优,个人/团队版月付仅35元起!
1170 49
|
10天前
|
自然语言处理 测试技术 API
通义千问Qwen3.8-Max-Preview全功能解析:2.4万亿参数旗舰模型深度使用指南
在大模型技术持续迭代的当下,通义千问推出的Qwen3.8-Max-Preview作为新一代旗舰预览版模型,凭借2.4万亿参数的超大规模、多模态融合能力与全场景适配特性,成为开发者与企业用户探索AI应用的核心工具。该模型采用稀疏混合专家(MoE)架构,是通义千问首个突破万亿参数的多模态模型,可同时处理文本、图像、视频与文档等多种数据形态,在全栈代码开发、复杂逻辑推理、长文档分析与多智能体协作等场景实现跨越式升级。本文将全面拆解Qwen3.8-Max-Preview的核心功能,详解API调用流程与配置方法,覆盖多场景实战技巧,帮助用户快速掌握这款旗舰模型的使用方法,充分释放其性能潜力。
599 2
|
10天前
|
SQL 关系型数据库 MySQL
【2026最新】DBeaver下载、安装、数据库管理一篇搞定(附官网社区版安装包)
DBeaver是一款免费开源的跨平台通用数据库管理工具,支持MySQL、PostgreSQL、SQLite、Oracle等几乎所有主流数据库,无需为每种数据库安装独立客户端,极大提升开发与数据分析效率。

热门文章

最新文章