位置: 编程技术 - 正文
推荐整理分享Android集成讯飞SDK实现语音拨号、语音导航、语音启动应用(讯飞src),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:讯飞a1,讯飞 apk,讯飞 sdk,讯飞 apk,讯飞内部,讯飞byod,讯飞内部,讯飞 sdk,内容如对您有帮助,希望把文章链接给更多的朋友!
转载请注明出处:周木水的CSDN博客 上篇博文介绍了讯飞SDK的一些简单功能: Android 使用讯飞语音SDK
今天来看看对语义分析结果JSON的解析并处理:
实现语音拨号首先,我们看看“打电话给张三”这句话在服务器分析之后,传给我们的JSON是什么样的:
所以,我们的思路就是获取到name,然后和联系人ContentProvider中的联系人DisplayName进行逐一匹配。但是要考虑到同音字的问题(例如:“打电话给张晓静”,服务器返回的name是”张小静“,这就没法匹配。)在没有匹配的情况下,我们将name转成拼音,然后再和联系人拼音进行对比即可。
看一下核心代码:
语音导航这里不考虑”从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动画的效果,就是多张图按预先设定好的时间依次连
标签: 讯飞src
本文链接地址:https://www.jiuchutong.com/biancheng/378186.html 转载请保留说明!上一篇:Android与设计模式:用单一职责原则为Activity解耦(android设计模式的应用场景)
友情链接: 武汉网站建设