事件处理方法及装置与流程

文档序号:12463723阅读:186来源:国知局
事件处理方法及装置与流程

本发明涉及终端技术领域,尤其涉及一种事件处理方法及装置。



背景技术:

目前,终端无法通过重载android的监控按键接口来实现对语音按键的监听的应用,而是通过在android机制的framework层截断语音按键事件再发送其他广播或启动服务等方式来监听按键,这样从语音按键到应用响应,比较耗时。



技术实现要素:

本发明实施例提供一种事件处理方法及装置,用以减少语音按键事件处理比较耗时的问题,从而提升用户的使用体验。

根据本发明实施例的第一方面,提供一种事件处理方法,用于终端,包括:

创建socket服务端;

当接收到语音应用程序的客户端发送的连接请求后,建立所述语音应用程序的客户端和所述socket服务端之间的连接;

监听所述终端是否接收到语音按键事件;

当监听到所述终端接收到所述语音按键事件后,通过所述socket服务端发送所述语音按键事件至所述语音应用程序的客户端,以使所述语音应用程序的客户端根据所述语音按键事件执行对应的处理操作。

在该实施例中,在终端中创建socket服务端,并在语音应用程序的客户端和socket服务端建立连接,这样,当监听到语音按键事件后,直接通过socket服务端将该语音按键事件发送到语音应用程序的客户端,从而使得应用层可以直接获得语音按键事件,进而快速响应,无需通过安卓机制,减少响应的耗时时长。

在一个实施例中,在创建所述socket服务端之后,所述方法还包括:

检测所述语音应用程序的客户端是否启动;

当检测到所述语音应用程序的客户端启动后,控制所述语音应用程序发送所述连接请求。

在该实施例中,可以在检测到语音应用程序的客户端启动后,即发送连接请求至socket服务端,从而和socket服务端之间建立连接,便于在接收到语音按键事件时进行数据即时传输。

在一个实施例中,所述监听所述终端是否接收到语音按键事件,包括:

通过linux操作系统的inotify机制监听所述终端是否接收到语音按键事件。

Inotify是一个Linux特性,它监控文件系统操作,比如读取、写入和创建。Inotify反应灵敏,用法非常简单,并且比cron任务的繁忙轮询高效得多。

在一个实施例中,所述连接请求中包括所述语音应用程序的客户端的标识,所述当监听到所述终端接收到所述语音按键事件后,通过所述socket服务端发送所述语音按键事件至所述语音应用程序的客户端,包括:

当监听到所述终端接收到所述语音按键事件后,根据所述连接请求中的所述标识,通过所述socket服务端发送所述语音按键事件至所述语音应用程序的客户端。

在该实施例中,为了便于进行语音按键事件传输,可以在连接请求中包含标识,并记录该标识,从而在进行语音按键事件传输时,根据该标识将语音按键事件发送至语音应用程序的客户端。

根据本发明实施例的第二方面,提供一种事件处理方法,用于语音应用程序的客户端,包括:

当所述语音应用程序的客户端启动后,发送连接请求至终端,以使所述终端根据所述连接请求建立所述语音应用程序的客户端和所述终端的socket服务端之间的连接;

接收所述socket服务端发送的语音按键事件,并执行所述语音按键事件对应的处理操作。

在该实施例中,在终端中创建socket服务端,并在语音应用程序的客户端和socket服务端建立连接,这样,当监听到语音按键事件后,直接通过socket服务端将该语音按键事件发送到语音应用程序的客户端,从而使得应用层可以直接获得语音按键事件,进而快速响应,无需通过安卓机制,减少响应的耗时时长。

根据本发明实施例的第三方面,提供一种事件处理装置,用于终端,包括:

创建模块,用于创建socket服务端;

连接模块,用于当接收到语音应用程序的客户端发送的连接请求后,建立所述语音应用程序的客户端和所述socket服务端之间的连接;

监听模块,用于监听所述终端是否接收到语音按键事件;

第一发送模块,用于当监听到所述终端接收到所述语音按键事件后,通过所述socket服务端发送所述语音按键事件至所述语音应用程序的客户端,以使所述语音应用程序的客户端根据所述语音按键事件执行对应的处理操作。

在一个实施例中,所述装置还包括:

检测模块,用于在创建所述socket服务端之后,检测所述语音应用程序的客户端是否启动;

控制模块,用于当检测到所述语音应用程序的客户端启动后,控制所述语音应用程序发送所述连接请求。

在一个实施例中,所述监听模块用于:

通过linux操作系统的inotify机制监听所述终端是否接收到语音按键事件。

在一个实施例中,所述连接请求中包括所述语音应用程序的客户端的标识,所述第一发送模块用于:

当监听到所述终端接收到所述语音按键事件后,根据所述连接请求中的所述标识,通过所述socket服务端发送所述语音按键事件至所述语音应用程序的客户端。

根据本发明实施例的第四方面,提供一种事件处理装置,用于语音应用程序的客户端,包括:

第二发送模块,用于当所述语音应用程序的客户端启动后,发送连接请求至终端,以使所述终端根据所述连接请求建立所述语音应用程序的客户端和所述终端的socket服务端之间的连接;

执行模块,用于接收所述socket服务端发送的语音按键事件,并执行所述语音按键事件对应的处理操作。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

图1是根据一示例性实施例示出的一种事件处理方法的流程图。

图2是根据一示例性实施例示出的另一种事件处理方法的流程图。

图3是根据一示例性实施例示出的一种事件处理方法中步骤S103的流程图。

图4是根据一示例性实施例示出的一种事件处理方法中步骤S103的流程图。

图5是根据一示例性实施例示出的一种事件处理方法的流程图。

图6是根据一示例性实施例示出的一种事件处理装置的框图。

图7是根据一示例性实施例示出的另一种事件处理装置的框图。

图8是根据一示例性实施例示出的一种事件处理装置的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。

图1是根据一示例性实施例示出的一种事件处理方法的流程图。该事件处理方法应用于终端设备中,该终端设备可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等任一具有安卓操作系统的设备。如图1所示,该方法包括步骤S101-S104:

在步骤S101中,创建socket服务端;

在步骤S102中,当接收到语音应用程序的客户端发送的连接请求后,建立语音应用程序的客户端和socket服务端之间的连接;

在步骤S103中,监听终端是否接收到语音按键事件;

在步骤S104中,当监听到终端接收到语音按键事件后,通过socket服务端发送语音按键事件至语音应用程序的客户端,以使语音应用程序的客户端根据语音按键事件执行对应的处理操作。

在该实施例中,在终端中创建socket服务端,并在语音应用程序的客户端和socket服务端建立连接,这样,当监听到语音按键事件后,直接通过socket服务端将该语音按键事件发送到语音应用程序的客户端,从而使得应用层可以直接获得语音按键事件,进而快速响应,无需通过安卓机制,减少响应的耗时时长。

图2是根据一示例性实施例示出的另一种事件处理方法的流程图。

如图2所示,在一个实施例中,在上述步骤S101之后,方法还包括步骤S201-S202:

在步骤S201中,检测语音应用程序的客户端是否启动;

在步骤S202中,当检测到语音应用程序的客户端启动后,控制语音应用程序发送连接请求。

在该实施例中,可以在检测到语音应用程序的客户端启动后,即发送连接请求至socket服务端,从而和socket服务端之间建立连接,便于在接收到语音按键事件时进行数据即时传输。

图3是根据一示例性实施例示出的一种事件处理方法中步骤S103的流程图。

如图3所示,在一个实施例中,上述步骤S103包括步骤S301:

在步骤S301中,通过linux操作系统的inotify机制监听终端是否接收到语音按键事件。

Inotify是一个Linux特性,它监控文件系统操作,比如读取、写入和创建。Inotify反应灵敏,用法非常简单,并且比cron任务的繁忙轮询高效得多。

图4是根据一示例性实施例示出的一种事件处理方法中步骤S103的流程图。

如图4所示,在一个实施例中,连接请求中包括语音应用程序的客户端的标识,上述步骤S104包括步骤S401:

在步骤S401中,当监听到终端接收到语音按键事件后,根据连接请求中的标识,通过socket服务端发送语音按键事件至语音应用程序的客户端。

在该实施例中,为了便于进行语音按键事件传输,可以在连接请求中包含标识,并记录该标识,从而在进行语音按键事件传输时,根据该标识将语音按键事件发送至语音应用程序的客户端。

图5是根据一示例性实施例示出的一种事件处理方法的流程图。该事件处理方法应用于语音应用程序的客户端中。如图5所示,该方法包括步骤S501-S502:

在步骤S501中,当语音应用程序的客户端启动后,发送连接请求至终端,以使终端根据连接请求建立语音应用程序的客户端和终端的socket服务端之间的连接;

在步骤S502中,接收socket服务端发送的语音按键事件,并执行语音按键事件对应的处理操作。

在该实施例中,在终端中创建socket服务端,并在语音应用程序的客户端和socket服务端建立连接,这样,当监听到语音按键事件后,直接通过socket服务端将该语音按键事件发送到语音应用程序的客户端,从而使得应用层可以直接获得语音按键事件,进而快速响应,无需通过安卓机制,减少响应的耗时时长。

下述为本发明装置实施例,可以用于执行本发明方法实施例。

图6是根据一示例性实施例示出的一种事件处理装置的框图,该装置可以通过软件、硬件或者两者的结合实现成为终端设备的部分或者全部。如图6所示,该事件处理装置包括:

创建模块61,用于创建socket服务端;

连接模块62,用于当接收到语音应用程序的客户端发送的连接请求后,建立所述语音应用程序的客户端和所述socket服务端之间的连接;

监听模块63,用于监听所述终端是否接收到语音按键事件;

第一发送模块64,用于当监听到所述终端接收到所述语音按键事件后,通过所述socket服务端发送所述语音按键事件至所述语音应用程序的客户端,以使所述语音应用程序的客户端根据所述语音按键事件执行对应的处理操作。

在该实施例中,在终端中创建socket服务端,并在语音应用程序的客户端和socket服务端建立连接,这样,当监听到语音按键事件后,直接通过socket服务端将该语音按键事件发送到语音应用程序的客户端,从而使得应用层可以直接获得语音按键事件,进而快速响应,无需通过安卓机制,减少响应的耗时时长。

图7是根据一示例性实施例示出的另一种事件处理装置的框图。

如图7所示,在一个实施例中,上述装置还包括:

检测模块71,用于在创建所述socket服务端之后,检测所述语音应用程序的客户端是否启动;

控制模块72,用于当检测到所述语音应用程序的客户端启动后,控制所述语音应用程序发送所述连接请求。

在该实施例中,可以在检测到语音应用程序的客户端启动后,即发送连接请求至socket服务端,从而和socket服务端之间建立连接,便于在接收到语音按键事件时进行数据即时传输。

在一个实施例中,所述监听模块63用于:

通过linux操作系统的inotify机制监听所述终端是否接收到语音按键事件。

在一个实施例中,所述连接请求中包括所述语音应用程序的客户端的标识,所述第一发送模块64用于:

当监听到所述终端接收到所述语音按键事件后,根据所述连接请求中的所述标识,通过所述socket服务端发送所述语音按键事件至所述语音应用程序的客户端。

在该实施例中,为了便于进行语音按键事件传输,可以在连接请求中包含标识,并记录该标识,从而在进行语音按键事件传输时,根据该标识将语音按键事件发送至语音应用程序的客户端。

图8是根据一示例性实施例示出的一种事件处理装置的框图,该装置可以通过软件、硬件或者两者的结合实现成为语音应用程序的客户端的部分或者全部。如图8所示,该事件处理装置包括:

第二发送模块81,用于当所述语音应用程序的客户端启动后,发送连接请求至终端,以使所述终端根据所述连接请求建立所述语音应用程序的客户端和所述终端的socket服务端之间的连接;

执行模块82,用于接收所述socket服务端发送的语音按键事件,并执行所述语音按键事件对应的处理操作。

在该实施例中,在终端中创建socket服务端,并在语音应用程序的客户端和socket服务端建立连接,这样,当监听到语音按键事件后,直接通过socket服务端将该语音按键事件发送到语音应用程序的客户端,从而使得应用层可以直接获得语音按键事件,进而快速响应,无需通过安卓机制,减少响应的耗时时长。

下面以一个具体实施例详细说明本发明的过程。

A:linux inotify机制监听按键事件:

B:创建socket服务:

C:在系统启动的时候就启动按键监听的可执行程序,并配置socket:

在init.rc里添加如下代码:

D:上层应用只需要通过socket来进行通讯:

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1