本发明涉及语音输入技术领域,具体来说,涉及一种Android智能语音控制方法及系统。

背景技术:

现在人们的生活越来越依赖于智能手机:社交、打折信息、导航、购物等,为了解决某些特定场合不能手动操作手机的使用需求、方便老人操作、解放双眼等问题,已有相应的智能语音技术得到应用。如,许多输入法都自带的语音输入功能;某些手机自带的语音控制功能,可以执行打开某个应用的简单功能;某些定制的产品上可以实现语音控制功能,比如roobo机器人可以实现打开爱奇艺、搜索并播放节目。

目前的语音系统主要用于语音输入和简单的启动Android程序,不能进行屏幕翻页等系统级别的运行,且不能用于连续的语音输入(每次输入前需要按一个按键才能进行语音输入);能用于控制的也是用于特殊产品,例如机器人方面,主要是控制自己制作的产品;不具有通用性。

输入注入:由于系统限制,各个程序之间要想传递数据必须在程序中采取明确的方式进行;如果没有明确指定数据传输方式,则必须要绕过系统的各种限制,我们把这种方式称之为输入注入。

开发一套通用的语音控制方法和系统,能够帮助人们通过语音来控制Android系统的运行很有必要。

技术实现要素:

针对相关技术中的上述技术问题,一种Android智能语音控制方法及系统,能够帮助人们通过语音来控制Android系统的运行,不仅能实现连续语音输入,还可以实现产品的通用性。

为实现上述技术目的,本发明的第一方面提供了一种Android智能语音控制方法,包括:

S1建立一系统/Root权限的Service,以使执行的代码具有系统/Root权限;

S2开放一个接口给上层的语音控制模块;

S3启动语音识别模块,将得到的文本信息跟本语音控制系统中特定动作信息进行匹配,如果匹配成功则向启动的Service中发送相应的信息;

S4所述服务Service根据传入的动作信息调用系统相应代码,使执行的代码具有系统/Root权限,从而绕过系统的限制实现输入注入的功能。

其中,步骤S1包括:

S11用java编写一个服务Service;

S12调用底层的app_process命令,将该服务Service启动为系统/Root权限;

S13跟上层的APP通讯。

进一步的,步骤S13包括:

S131开放socket接口,通过C/S方式跟上层的APP通讯;或者

S132使用JAVA Binder通讯机制。

其中,步骤S132包括:

在服务Service端通过调用IServiceManager.addService()函数将自己注册到系统中;

上层APP通过调用ServiceManager.getService()函数获取该服务的接口;通过transact()函数调用服务Service中的功能函数传递信息。

本发明的另一方面提供了一种Android智能语音控制系统,包括:

一系统级别或者具有Root权限的服务Service;

一上层的语音控制模块,所述Service开放一接口给所述上层的语音控制模块;和

一语音识别模块,其将得到的文本信息跟本语音控制系统中特定动作信息进行匹配,如果匹配成功则向启动的Service中发送相应的信息,所述服务Service根据传入的动作信息调用系统相应代码,使执行的代码具有系统/Root权限,从而绕过系统的限制实现输入注入的功能。

本发明的有益效果:通过在系统中增加一个具有系统/Root权限的服务,使后续执行的代码也具有了系统/Root权限,从而在系统层面执行相应的代码,可以在不破坏系统完整性的同时达到通用性的目的,使得语音控制能实现更多功能。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例所述一种Android智能语音控制方法的流程框图;

图2是根据本发明实施例所述一种Android智能语音控制系统的结构图示意。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,根据本发明实施例所述一种Android智能语音控制方法,包括:

S1建立一系统/Root权限的Service,以使执行的代码具有系统/Root权限;

S2开放一个接口给上层的语音控制模块;

S3启动语音识别模块,将得到的文本信息跟本语音控制系统中特定动作信息进行匹配,如果匹配成功则向启动的Service中发送相应的信息;

S4所述服务Service根据传入的动作信息调用系统相应代码,使执行的代码具有系统/Root权限,从而绕过系统的限制实现输入注入的功能。

其中,步骤S1包括:

S11用java编写一个服务Service;

S12调用底层的app_process命令,将该服务Service启动为系统/Root权限;

S13跟上层的APP通讯。

进一步的,步骤S13包括:

S131开放socket接口,通过C/S方式跟上层的APP通讯;或者

S132使用JAVA Binder通讯机制。

其中,步骤S132包括:

在服务Service端通过调用IServiceManager.addService()函数将自己注册到系统中;

上层APP通过调用ServiceManager.getService()函数获取该服务的接口;通过transact()函数调用服务Service中的功能函数传递信息。

如图2所示,根据本发明实施例所述一种Android智能语音控制系统,包括:

一系统级别或者具有Root权限的服务Service;

一上层的语音控制模块,所述Service开放一接口给所述上层的语音控制模块;和

一语音识别模块,其将得到的文本信息跟本语音控制系统中特定动作信息进行匹配,如果匹配成功则向启动的Service中发送相应的信息,所述服务Service根据传入的动作信息调用系统相应代码,使执行的代码具有系统/Root权限,从而绕过系统的限制实现输入注入的功能。

综上所述,借助于本发明的上述技术方案,通过在系统中增加一个具有系统/Root权限的服务,使后续执行的代码也具有了系统/Root权限,从而在系统层面执行相应的代码,可以在不破坏系统完整性的同时达到通用性的目的,使得语音控制能实现更多功能。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

c语言智能语音系统,一种Android智能语音控制方法及系统与流程相关推荐

  1. 量子计算机模拟其他系统,一种量子计算机的模拟控制方法、系统及相关组件技术方案...

    [技术实现步骤摘要] 一种量子计算机的模拟控制方法.系统及相关组件 本专利技术涉及量子计算机控制领域,特别涉及一种量子计算机的模拟控制方法.系统及相关组件. 技术介绍 近年来,随着量子计算技术发展迅速 ...

  2. 电视android系统怎么重启,Android智能电视机进行系统软件还原的方法与流程

    本发明涉及智能电视机技术领域,具体涉及一种Android智能电视机进行系统软件还原的方法. 背景技术: Android系统目前已经成为智能电视的主流平台,用户可以在基于Android智能电视上安装大量 ...

  3. android智能电视APP开发教程,Android智能电视开发之明星UI---RecyclerView

    在 Android 连接世界的大潮中,智能电视也无法幸免,成为了浪潮中的一员.我们平常拿着电视遥控器,随意地上下左右切换选中的频道图标,再按确认键进入我们所选的频道. 这看似十分平常的一个习惯,殊不知 ...

  4. win7系统没有光驱怎么重装系统?三种方法教你如何重装系统

    大家都知道如果我们的电脑受损严重或者中病毒了,这都需要我们队电脑重装系统,那么没有光驱的电脑该如何重装系统呢?一起来看看吧. 步骤如下: 第一种方法:第一步,下载系统光盘镜像(系统推荐下载:WinXP ...

  5. android使用系统字体文件,Android 自定义字体,更换系统默认显示的字体使用自定义字体...

    序言: 1.指定控件显示指定字体 有时为了美化UI,需要在指定控件中显示特定的字体,而这个字体在Android系统中却没有,此时可将需要的字体文件存放在assets文件夹中,在为控件设置Typefac ...

  6. android调用系统裁剪功能,Android图片剪裁之调用系统剪裁

    参考: 一. 原理 通过Intent打开系统自带的剪裁Activity,通过Intent设置Extra参数,进行剪裁参数的设定.剪裁结果的缩略图会保存在返回的data中,而大图要通过Uri进行保存(其 ...

  7. java 远程视频监控系统_基于android的远程视频监控系统 附完整源码

    [实例简介]原理:客户端将采集到的每一帧图像数据发送至服务器,服务器接收 [实例截图] [核心代码] /* * @version 1.2 2012-06-29 * @author wanghai */ ...

  8. 将100本英文书名做字典排序 c语言,C语言课程设计一种简单的英文词典排版系统c.doc...

    C语言课程设计一种简单的英文词典排版系统c 英文摘要中国地质大学(武汉)C语言课程设计学 院:机电学院 专 业:通信工程 题 目:一种简单的英文词典排版系统 班 级:075094 姓 名: 学 号: ...

  9. android wifi视频监控软件,WiFi环境下Android智能视频监控系统研究与实现

    摘要: 在互联网飞速发展和移动互联网强势崛起的时代,科技产品服务于普通生活是新兴行业必然的发展趋势;监控系统是物联网时代各个领域必然争取的可控制系统.随着无线技术和移动终端设备的高歌猛进,移动终端智能 ...

最新文章

  1. N 组连续子串最大和
  2. docker image name 更改_将前端应用打包成docker镜像并部署?仅需一个脚本就搞定
  3. 计算机网络在实践教学,高职计算机网络技术实践教学研究
  4. 学期计算机教案,学年第2学期课程教案-计算机组成原理-陈立伟
  5. yzmcms图片自适应代码_基于segment.js制作的非常有创意的分段式SVG文字动画特效...
  6. linux getit文件乱码,winzipaes文件名乱码解决方案
  7. jpa 查询编写sql_学习编写基本SQL查询
  8. Linux 内存泄漏检查工具 valgrind
  9. android--显式跳转和隐式跳转
  10. 50道SQL练习题及答案与详细分析
  11. 淘宝闲鱼等电商平台数据采集软件
  12. 如何使用微信小程序第三方UI组件库
  13. 2021年全球人工智能行业调研及趋势分析报告
  14. IOS应用版本号设置
  15. VMware 虚拟机安装 Mac OS X Mountain Lion 苹果系统
  16. 用meta name=renderer content=webkit|ie-comp|ie-stand来切换360双核安全浏览器的极速模式和兼容模式
  17. java实现图片上传至本地
  18. 小航助学答题系统编程等级考试scratch一级真题2023年3月(含题库答题软件账号)
  19. 最简单的平面制图用什么软件_视频解说不想自己录,用什么简单好用的配音软件制作?...
  20. WebRTC实现多人视频聊天之信令服务器设计

热门文章

  1. Java Web入门项目之“网络交友”的设计与实现
  2. Winwebmail3.7.6.1最新版注册机使用方法
  3. 『ORACLE』安装oracle(11g)
  4. MATLAB怎么表示均布荷载,基于Matlab的均布荷载作用下矩形薄板的有限元分析
  5. python | 字符串拼接.join()和拆分.split()
  6. GPS信号捕获的MATLAB_FPGA仿真
  7. 潜移默化的英语成长及半年展望
  8. 某音批量发私信的思路
  9. java 布局层次_[求助]swing问题---层次布局
  10. 【jzoj4921】【幻魔皇】