位置: 编程技术 - 正文

Android集成讯飞SDK实现语音拨号、语音导航、语音启动应用(讯飞src)

编辑:rootadmin

推荐整理分享Android集成讯飞SDK实现语音拨号、语音导航、语音启动应用(讯飞src),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:讯飞a1,讯飞 apk,讯飞 sdk,讯飞 apk,讯飞内部,讯飞byod,讯飞内部,讯飞 sdk,内容如对您有帮助,希望把文章链接给更多的朋友!

转载请注明出处:周木水的CSDN博客 上篇博文介绍了讯飞SDK的一些简单功能: Android 使用讯飞语音SDK

今天来看看对语义分析结果JSON的解析并处理:

实现语音拨号

首先,我们看看“打电话给张三”这句话在服务器分析之后,传给我们的JSON是什么样的:

所以,我们的思路就是获取到name,然后和联系人ContentProvider中的联系人DisplayName进行逐一匹配。但是要考虑到同音字的问题(例如:“打电话给张晓静”,服务器返回的name是”张小静“,这就没法匹配。)在没有匹配的情况下,我们将name转成拼音,然后再和联系人拼音进行对比即可。

看一下核心代码:

语音导航Android集成讯飞SDK实现语音拨号、语音导航、语音启动应用(讯飞src)

这里不考虑”从A到B怎么走(A,B都为异地)“的情况。起点不是当前位置的情况解析方式相同,只是不常用。所以这里的例子起点默认为当前定位位置。 当我们说”导航到深圳北站“时,服务器返回的JSON如下:

首先我们对JSON进行解析:

调用百度地图的导航接口,需要传入起始点的经纬度。当前位置的经纬度是已知的,所以要将目的地的字符串转成经纬度。这就涉及到百度LBS SDK的使用:

语音启动应用

当我们说”打开百度地图“时,服务器返回的JSON是:

和语音拨号类似,我们可以获取到应用的名称,然后和ResolveInfo中应用的名称Label进行比对,如果匹配,则拿到包名,然后进行启动。

注意:要考虑到应用名称为非中文的情况。(比如我们说”启动QQ“,但讯飞识别的是”qq“,如果简单粗暴的进行String的equals比较,则会匹配失败。这时候需要将应用名称与Label都转成大写或小写。)

转载请注明出处:周木水的CSDN博客

Gallery图片浏览 原文:Gallery图片浏览源代码下载地址:

迄今最好的Http请求框架 本文原创,转载请注明链接

android之frame动画详解 上一篇我们说了android中的tween动画,这一篇我们说说frame动画,frame动画主要是实现了一种类似于gif动画的效果,就是多张图按预先设定好的时间依次连

本文链接地址:https://www.jiuchutong.com/biancheng/378186.html 转载请保留说明!

上一篇:Android与设计模式:用单一职责原则为Activity解耦(android设计模式的应用场景)

下一篇:Gallery图片浏览(浏览图片的软件叫什么)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络