一种输入事件管理方法及装置制造方法及图纸

技术编号:7786276 阅读:147 留言:0更新日期:2012-09-21 07:14
本发明专利技术公开了一种输入事件管理方法,包括如下步骤:预置的事件服务程序创建用于接收输入设备的输入事件的线程;根据所述线程接收到的输入事件,对所述输入事件进行标准化处理得到标准输入事件;将所述标准输入事件分发给应用程序。本发明专利技术的目的在于提供一种输入事件管理方法及装置,可有效的管理各个应用程序,方便的实现了各个应用程序间的来回切换,提高用户体验。

【技术实现步骤摘要】

本专利技术涉及机顶盒领域,尤其涉及一种输入事件管理方法及装置
技术介绍
目前机顶盒的应用很普遍,但每个具有显示功能的业务程序都只能单独运行,而不能同时运行,现有的做法是为各个相互独立的应用程序建立多个线程,以便接收不用类 型事件来源发送的事件,但这样开发及调试都很麻烦,而且当有新的事件来源增加,开发人员必须花费大量的时间和精力进行代码的修改及测试。对于用户而言,每次只能执行一个业务程序,要办理其他的业务,得先把当前的业务结束,然后再启动要办理的业务,给用户操作带来极大的不方便,无法实现多种业务程序同时运行,无法实现在各业务程序间来回切换,不能够满足各种用户不同的交互相需求。
技术实现思路
本专利技术实施例所要解决的技术问题在于,提供一种输入事件管理方法及装置,可实现多种业务程序同时运行和在各业务程序之间来回切换,满足各种用户不同的交互相需求。为了解决上述技术问题,本专利技术实施例提供了一种输入事件管理方法,包括 预置的事件服务程序创建用于接收输入设备的输入事件的线程;根据所述线程接收到的输入事件,对所述输入事件进行标准化处理得到标准输入事件; 将所述标准输入事件分发给应用程序。其中,所述创建的线程包括USB输入线程、红外输入线程和进程通信的端点SOCKET输入线程中任一种或几种。其中,所述根据所述线程接收到的输入事件,对所述输入事件进行标准化处理得到标准输入事件包括 当所述线程是USB输入线程时,所述USB输入线程用于阻塞接收本地USB设备的输入事件,并将所述本地USB设备的输入事件作为标准输入事件; 当所述线程是红外输入线程时,所述红外线输入线程用于阻塞接收红外设备的输入事件,并在红外输入线程内部的驱动层中将接收到的输入事件模拟成键盘和/或鼠标输入事件,将模拟得到的键盘和/或鼠标输入事件作为标准化输入事件; 当所述线程是SOCKET输入线程时,所述SOCKET输入线程用于阻塞接收远程终端设备的输入事件,并在SOCKET输入线程内部的驱动层中将接收到的输入事件转化为标准的键盘和/或鼠标事件,将得到的键盘和/或鼠标输入事件作为标准化输入事件。其中,所述将所述经过标准化处理的事件分发给应用程序之前包括 当应用程序需要获取输入事件服务时,所述应用程序向所述事件服务程序注册。其中,还包括所述事件服务程序根据预置的应用程序管理机制保证在所述事件服务程序中注册的应用程序中,有且只有一个应用程序处于激活状态STATE_ACTIVE,保证每次只有一个应用程序能接收到事件。其中,还包括 所述事件服务程序在接收到用户自定义的事件时,根据预置的自定义事件处理机制对所述用户自定义的事件进行自定义处理。其中,还包括事件服务程序创建状态监测线程,其中, 所述状态监测线程定期轮询注册应用程序队列,根据所述应用程序的进程控制符检测其状态,并维护所述注册应用程序队列。相应地,本专利技术实施例还提供了一种输入事件管理装置,包括 线程创建单元,用于预置的事件服务程序创建线程以便接收输入设备的输入事件;标准化处理单元,用于根据所述线程创建单元接收到输入设备的输入事件,对所述输入事件进行标准化处理得到标准输入事件; 发送单元,用于将所述标准化处理单元的标准化处理得到的标准输入事件分发给应用程序。其中,所述标准化处理单元包括 第一标准化处理单元,用于当所述线程是USB输入线程时,对所述USB输入线程阻塞接收本地USB设备的输入事件,并将所述本地USB设备的输入事件作为标准输入事件; 第二标准化处理单元,用于当所述线程是红外输入线程时,所述红外线输入线程用于阻塞接收红外设备的输入事件,并在红外输入线程内部的驱动层中将接收到的输入事件模拟成键盘和/或鼠标输入事件,将模拟得到的键盘和/或鼠标输入事件作为标准化输入事件; 第三标准化处理单元,用于当所述线程是SOCKET输入线程时,所述SOCKET输入线程用于阻塞接收远程终端设备的输入事件,并在SOCKET输入线程内部的驱动层中将接收到的输入事件转化为标准的键盘和/或鼠标事件,将得到的键盘和/或鼠标输入事件作为标准化输入事件。其中,包括 应用程序注册单元,用于当应用程序需要获取输入事件服务时,所述应用程序向所述事件服务程序注册。其中,包括 应用程序管理单元,用于保证在所述事件服务程序中注册的应用程序中,有且只有一个应用程序处于激活状态STATE_ACTIVE状态,保证每次只有一个应用程序能接收到事件。其中,还包括 自定义事件处理单元,用于所述事件服务程序在接收到用户自定义事件时,对所述用户自定义的事件进行自定义处理。其中,还包括 状态监测单元,用于定期轮询注册应用程序队列,根据所述应用程序的进程控制符检测其状态,并维护所述注册应用程序队列。实施本专利技术实施例,具有如下有益效果本专利技术实施例中的事件服务器屏蔽了事件来源的类型并对事件进行了标准化,使得程序的开发更加方便,并具有很好的扩展性,提高了开发效率,同时有效的管理了各个应用程序,对于多个带有显示功能的应用程序来说,可以轻松实现看电影,上网及浏览图片等业务程序同时运行,互不干扰,并能实现在各业务程序间来回切换,大大方便了用户的操作,提升了用户体验。附图说明图I为本专利技术的一种输入事件管理方法的第一实施例的流程 图2为本专利技术的一种输入事件管理方法的第二实施例的流程 图3为本专利技术的一种输入事件管理方法的第三实施例的流程图; 图4为本专利技术的一种输入事件管理方法的第四实施例的流程 图5为本专利技术的一种输入事件管理装置的第一实施例的结构示意 图6为本专利技术的一种输入事件管理装置的第二实施例的结构示意 图7为本专利技术的一种输入事件管理装置的第三实施例的结构示意 图8为本专利技术的一种输入事件管理装置的第四实施例的结构示意图。具体实施例方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参见图1,为本专利技术的一种输入事件管理方法的第一实施例的流程图。所述方法包括 S101,预置的事件服务程序创建用于接收输入设备的输入事件的线程; 具体的,本专利技术实施例中所述预置的事件服务程序创建的线程包括USB输入线程、红外输入线程和进程通信的端点SOCKET输入线程中任一种或几种,其中,所述USB输入线程用于阻塞接收本地USB设备(鼠标、键盘)的输入事件,并将所述本地USB设备的输入事件作为标准输入事件,当所述线程是红外输入线程时,所述红外线输入线程用于阻塞接收红外设备的输入事件,并在红外输入线程内部的驱动层中将接收到的输入事件模拟成键盘和/或鼠标输入事件,将模拟得到的键盘和/或鼠标输入事件作为标准化输入事件,所述线程是SOCKET输入线程时,所述SOCKET输入线程用于阻塞接收远程终端设备(手机、pad等)的输入事件,并在SOCKET输入线程内部的驱动层中将接收到的输入事件转化为标准的键盘和/或鼠标事件,将得到的键盘和/或鼠标输入事件作为标准化输入事件。需要说明的是,本专利技术实施例中所述阻塞接收是指在阻塞模式下,程序在调用接收函数时,如本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种输入事件管理方法,其特征在于,包括 预置的事件服务程序创建用于接收输入设备的输入事件的线程; 根据所述线程接收到的输入事件,对所述输入事件进行标准化处理得到标准输入事件; 将所述标准输入事件分发给应用程序。2.如权利要求I所述的方法,其特征在于,所述创建的线程包括USB输入线程、红外输入线程和进程通信的端点SOCKET输入线程中任一种或几种。3.如权利要求I所述的方法,其特征在于,所述根据所述线程接收到的输入事件,对所述输入事件进行标准化处理得到标准输入事件包括 当所述线程是USB输入线程时,所述USB输入线程用于阻塞接收本地USB设备的输入事件,并将所述本地USB设备的输入事件作为标准输入事件; 当所述线程是红外输入线程时,所述红外线输入线程用于阻塞接收红外设备的输入事件,并在红外输入线程内部的驱动层中将接收到的输入事件模拟成键盘和/或鼠标输入事件,将模拟得到的键盘和/或鼠标输入事件作为标准化输入事件; 当所述线程是SOCKET输入线程时,所述SOCKET输入线程用于阻塞接收远程终端设备的输入事件,并在SOCKET输入线程内部的驱动层中将接收到的输入事件转化为标准的键盘和/或鼠标事件,将得到的键盘和/或鼠标输入事件作为标准化输入事件。4.如权利要求I所述的方法,其特征在于,所述将所述经过标准化处理的事件分发给应用程序之前包括 当应用程序需要获取输入事件服务时,所述应用程序向所述事件服务程序注册。5.如权利要求4所述的方法,其特征在于,还包括 所述事件服务程序根据预置的应用程序管理机制保证在所述事件服务程序中注册的应用程序中,有且只有一个应用程序处于激活状态STATE_ACTIVE,保证每次只有一个应用程序能接收到事件。6.如权利要求I所述的方法,其特征在于,还包括 所述事件服务程序在接收到用户自定义的事件时,根据预置的自定义事件处理机制对所述用户自定义的事件进行自定义处理。7.如权利要求I所述的方法,其特征在于,还包括事件服务程序创建状态监测线程,其中, 所述状态监测线程定期轮询注册应用程序队列,根据所述应用...

【专利技术属性】
技术研发人员:曾爱明
申请(专利权)人:深圳创维数字技术股份有限公司深圳市创维软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1