一种实现头戴显示设备热插拔的方法、装置和终端设备与流程

文档序号:13236458阅读:148来源:国知局
一种实现头戴显示设备热插拔的方法、装置和终端设备与流程

本发明涉及头戴显示设备技术领域,特别涉及一种实现头戴显示设备热插拔的方法、装置和终端设备。



背景技术:

在头戴显示设备的使用过程中,都是使用线缆连接终端设备。因为用户的移动,难以避免出现头戴显示设备和终端设备的连接松动或断开连接的情况,会导致终端设备中正在运行的应用程序无法获取到头戴显示设备中的数据进行相应的动作。如果用户再次手动将头戴显示设备和终端设备连接后,正在运行的应用程序无法和头戴显示设备进行匹配,无法主动获取到头戴显示设备的数据,需要用户重新启动相应的应用程序和该头戴显示设备连接再次连接后,才能获取到该头戴显示设备中的数据,也就是说,现有技术中还不能实现头戴显示设备的热插拔,在头戴显示设备使用过程中,导致操作繁琐,降低用户体验。

所以,急需一种可以实现头戴显示设备热插拔的方案。



技术实现要素:

鉴于上述问题,提出了本发明的一种实现头戴显示设备热插拔的方法、装置和终端设备,以便解决或至少部分地解决上述问题。

根据本发明的一个方面,提供了一种实现头戴显示设备热插拔的方法,所述方法包括:

在终端设备运行与头戴显示设备关联的应用程序过程中,监听所述终端设备的设备变更信息;

根据监听到的设备变更信息,识别头戴显示设备的插拔动作;

当识别到头戴显示设备的插拔动作时,获取所述头戴显示设备的采集数据;

将所述采集数据发送给正在运行的应用程序,以便所述正在运行的应用程序根据所述采集数据完成对应的应用操作。

根据本发明的另一个方面,提供了一种实现头戴显示设备热插拔的装置,所述装置包括:

监听单元,用于在终端设备运行与头戴显示设备关联的应用程序过程中,监听所述终端设备的设备变更信息;

识别单元,用于根据监听到的设备变更信息,识别头戴显示设备的插拔动作;

获取单元,用于当识别到头戴显示设备的插拔动作时,获取所述头戴显示设备的采集数据;

发送单元,用于将所述采集数据发送给正在运行的应用程序,以便所述正在运行的应用程序根据所述采集数据完成对应的应用操作。

根据本发明的又一个方面,提供了一种实现头戴显示设备热插拔的装置,所述装置包括存储器和处理器,所述存储器和所述处理器之间通过内部总线通讯连接,所述存储器存储有能够被所述处理器执行的计算机程序,所述计算机程序被所述处理器执行时能够实现如前所述的方法步骤。

根据本发明的又一个方面,提供了一种终端设备,所述终端设备包括如前所述的实现头戴显示设备热插拔的装置;

所述终端设备,用于运行与头戴显示设备关联的应用程序。

综上所述,本发明的技术方案,通过监听到的终端设备的设备变更信息,识别头戴显示设备的插拔动作,当识别到头戴设备的插拔动作时,获取头戴显示设备中的采集数据,将采集数据发送给正在运行的应用程序,以便所述正在运行的应用程序根据所述采集数据完成对应的应用操作,并将操作结果发送给所述头戴显示设备。这样,即使头戴显示设备在应用程序运行过程中插入,正在运行的应用程序也可以正常的获取到采集数据,并进行相应的操作,不需要用户重新启动应用程序,操作简单,增强用户体验。

附图说明

图1为本发明一个实施例提供的一种实现头戴显示设备热插拔的方法的流程示意图;

图2为本发明一个实施例提供的一种实现头戴显示设备热插拔的方法的流程示意图;

图3为本发明一个实施例提供的一种实现头戴显示设备热插拔的装置的功能结构示意图;

图4为本发明另一个实施例提供的一种实现头戴显示设备热插拔的装置的功能结构示意图;

图5为本发明一个实施例提供的一种智能终端的结构示意图。

具体实施方式

传统意义上的热插拔,即带电插拔,就是允许用户在不关闭系统,不切断电源的情况下取出和更换损坏的硬盘、电源或板卡等部件,从而提高了系统对灾难的及时恢复能力、扩展性和灵活性等。在本实施例中,头戴显示设备的热插拔,就是在不重新启动应用程序的前提下,头戴显示设备可以进行插入和拔出的动作。为了实现头戴显示设备的热插拔,需要解决的是头戴显示设备插入后,正在运行的应用程序无法获得数据的问题。

本发明的设计思路是:通过监听到的终端设备的设备变更信息,识别头戴显示设备的插拔动作,当识别到头戴设备的插拔动作时,获取头戴显示设备中的采集数据,将采集数据发送给正在运行的应用程序,以便所述正在运行的应用程序根据所述采集数据完成对应的应用操作,实现头戴显示设备的热插拔。为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

图1为本发明一个实施例提供的一种实现头戴显示设备热插拔的方法的流程示意图。如图1所示,该方法包括:

步骤s110,在终端设备运行与头戴显示设备关联的应用程序过程中,监听终端设备的设备变更信息。

头戴显示设备的接口一个是usb接口,一个是hmdi接口,接口本身都支持热插拔,本实施例中主要是通过usb接口的信息获得设备更新信息。

监听终端设备的设备变更新信息有两种方式,一种是定期检测终端设备通过usb口接入的设备的信息,判断设备变更情况;一种是监听终端设备的系统程序根据usb接口的设备变更状态生成的wm_devicechange消息。

步骤s120,根据监听到的设备变更信息,识别头戴显示设备的插拔动作。

在本实施例中,通过监听终端设备的设备变更新信息,识别头戴显示设备的插拔动作。

在本发明的一个实施例中,上述的设备变更信息包括设备参数值,设备参数值用于进行插拔动作时,识别头戴显示设备;设备变更信息还携带有动作参数值,动作参数值标识头戴显示设备的插入/拔出终端设备的动作。通过动作参数值和设备参数值就可以识别出头戴显示设备的插入/拔出终端设备的动作。

在本发明的一个实施例中,上述的设备变更信息为wm_devicechange消息。该wm_devicechange消息是终端设备的操作系统在检测到usb接口有设备插拔时生成的。

具体地,wm_devicechange消息携带有wparam值,通过携带不同的wparam值标识插入动作和拨出动作,即可以通过wparam值判断终端设备上有设备拔出或插入。

wm_devicechange消息还携带有lparam值,lparam值中包含有生产商的编号vid和生产商内部的产品编号pid的信息;通过lparam值中携带的vid和pid信息,标识所插拔的头戴显示设备的设备信息,利用vid和pid信息与预设的vid和pid信息,就可以判断出从终端设备上插入或拔出的设备是否是头戴显示设备。

这里的wparam和lparam是一种消息响应机制,当终端设备的usb接口有设备插入或拔出时,均会有对应的wparam值和lparam值,并报告给智能终端系统,只要通过判定wparam值和lparam值是否和预设值一致,就可以实现头戴显示设备的拔出和插入的识别。根据usb规范的规定,所有的usb设备都有生产商的编号id(vid)和生产商内部的产品编号(pid),即vid/pid可以唯一标识一个设备。当usb设备连接终端设备时,如果设备中有设备生产商的编号vid和生产商内部的产品编号pid,会将该vid和pid报告给智能终端系统,进而使得智能终端系统可以生成相应的wm_devicechange消息,然后本方案就可通过vid和pid来识别是否是头戴显示设备。

从而根据设备变更新信息,就可以识别出终端设备中是否有设备插入或者拔出,插入或者拔出的设备是否是头戴显示设备。

步骤s130,当识别到头戴显示设备的插拔动作时,获取头戴显示设备的采集数据。

当识别到是头戴显示设备进行插拔动作,特别是头戴显示设备插入终端设备的动作时,获取头戴显示设备的采集数据。因为,头戴显示设备拔出后,与终端设备断开连接,是无法获取到头戴显示设备的采集数据的;当头戴显示设备插入后,虽然终端设备和头戴显示设备建立连接,但是正在运行的应用程序是无法和头戴显示设备建立连接关系的,不能获取到头戴显示设备的采集数据,为了让正在运行的应用程序可以获取到头戴显示设备的采集数据。本实施例中,一种情况是头戴显示设备可能是在使用过程中断开连接后重新插入的,另一种情况是用户将第一头戴显示设备换成了第二头戴显示设备后,将第二头戴显示设备插入。不管是那种情况,只要识别到有头戴显示设备插入时,正在运行的应用程序就去获取头戴显示设备的采集数据。

这里的采集数据是头戴显示设备中的各个传感器采集的数据,例如,陀螺仪采集的数据。

步骤s140,将采集数据发送给正在运行的应用程序,以便正在运行的应用程序根据采集数据完成对应的应用操作,还将操作结果发送给头戴显示设备。

这样,即使头戴显示设备在应用程序运行过程中插入,正在运行的应用程序也可以正常的获取到采集数据,并进行相应的操作,不需要用户重新启动应用程序,操作简单,增强用户体验。

在本发明的一个实施例中,步骤s130中的当识别到头戴显示设备的插拔动作时,图1所示的方法还包括:获取头戴显示设备的设备信息,将头戴显示设备的设备信息增添至正在运行的应用程序的设备信息列表中,以便正在运行的应用程序可根据设备信息列表中的头戴显示设备的设备信息,自主获取头戴显示设备的采集数据。

在头戴显示设备插入后,正在运行的应用程序是无法和头戴显示设备建立连接关系的,不能获取到头戴显示设备的采集数据,本方案可以去获取数据,再将数据发送给应用程序,避免应用程序的重启。为了能保证应用程序可以直接获取到头戴显示设备的采集数据,当识别到头戴显示设备插入时,获取头戴显示设备的设备信息,将头戴显示设备的设备信息增添至正在运行的应用程序的设备信息列表中,将正在运行的应用程序和插入的头戴显示设备建立连接,以便正在运行的应用程序可根据设备信息列表中的头戴显示设备的设备信息,自主获取头戴显示设备的采集数据。

在本发明的一个实施例中,根据监听到的设备变更信息,识别头戴显示设备的插拔动作包括:

(1)在识别头戴显示设备插入的方法为:将wm_devicechange消息中的wparam值与预设插入wparam值进行匹配,如果匹配成功,则判定有设备插入到终端设备;将wm_devicechange消息中的lparam值携带的vid信息和pid信息,与预设头戴显示设备的vid信息和pid信息进行匹配,如果匹配成功,则判定头戴显示设备插入;如果匹配成功,则判定该插入的设备并不是头戴显示设备。

本实施例中,因为插入的设备可以是其他和智能终端匹配的设备,例如,鼠标,为了识别插入的设备是否为头戴显示设备,预设有头戴显示设备的vid信息和pid信息。因为不同的用户使用的头戴显示设备是不同的,即不同生厂商和/或不同产品编号,可以和正在运行的应用匹配均可。为了保证用户使用的头戴显示设备的插拔动作均可以被识别到,预设的头戴显示设备的vid信息和pid信息是可匹配应用程序的不同的头戴显示设备的vid信息和pid信息。

例如,如上述说明中,同一个用户在应用程序运行过程中可能会出现更换头戴显示设备,即将第一头戴显示设备更换为第二头戴显示设备,那么为了可以识别到第二头戴显示设备的插入,预设的头戴显示设备的vid信息和pid信息包括有第二头戴显示设备的vid信息和pid信息,然后将第二头戴显示设备的vid信息和pid信息进行匹配,就可以识别到第二头戴显示设备的插入动作。如果无法匹配,说明该插入的设备不是头戴显示设备或不能和本应用程序匹配的设备。

(2)在识别头戴显示设备拔出的方法为:将wm_devicechange消息中的wparam值与预设拔出wparam值进行匹配,如果匹配成功,则判定有设备从终端设备拔出;将wm_devicechange消息中的lparam值携带的vid信息和pid信息,与预设头戴显示设备的vid信息和pid信息进行匹配,如果匹配成功,则判定头戴显示设备拔出;如果匹配成功,则判定该拔出的设备并不是头戴显示设备或不能和本应用程序匹配的设备。

图2为本发明一个实施例提供的一种实现头戴显示设备热插拔的方法的流程示意图。如图2所示,头戴显示设备headmountdisplay,简称hmd。该方法包括:

(1)当hmd拔出时,终端设备的系统根据usb接口信息,会生成一个wm_devicechange消息,发送给实现hmd热插拔的模块。wm_devicechange消息携带的wparam值是预设拔出wparam值,lparam中携带的vid信息和pid信息是hmd的预设vid信息和预设pid信息。终端设备实现hmd热插拔的模块会根据wm_devicechange消息识别出hmd拔出。这时,hmd的数据是中断的。

(2)当hmd插入时,终端设备的系统根据usb接口信息,会生成一个wm_devicechange消息,发送给实现hmd热插拔的模块。wm_devicechange消息携带的wparam值是预设插入wparam值,和lparam中携带的vid信息和pid信息是hmd的预设vid信息和预设pid信息。实现本方案的装置会根据wm_devicechange消息识别出hmd插入。这时,数据恢复,获取hmd的数据,将hmd的数据发送给正在运行的应用程序。

图3为本发明一个实施例提供的一种实现头戴显示设备热插拔的装置的功能结构示意图。如图3所示,该实现头戴显示设备热插拔的装置300包括:

监听单元310,用于在终端设备运行与头戴显示设备关联的应用程序过程中,监听终端设备的设备变更信息。

识别单元320,用于根据监听到的设备变更信息,识别头戴显示设备的插拔动作。

获取单元330,用于当识别到头戴显示设备的插拔动作时,获取头戴显示设备的采集数据。

发送单元340,用于将采集数据发送给正在运行的应用程序,以便正在运行的应用程序根据采集数据完成对应的应用操作。

在本发明的一个实施例中,图3所示的装置还包括设备信息添加单元,用于当识别到头戴显示设备的插拔动作时,获取头戴显示设备的设备信息,将头戴显示设备的设备信息增添至正在运行的应用程序的设备信息列表中,以便正在运行的应用程序可根据设备信息列表中的头戴显示设备的设备信息,自主获取头戴显示设备的采集数据。

在本发明的一个实施例中,设备变更信息包括设备参数值,设备参数值用于进行插拔动作时,识别头戴显示设备。

在本发明的一个实施例中,设备变更信息还携带有动作参数值,动作参数值标识头戴显示设备的插入/拔出终端设备的动作。

在本发明的一个实施例中,设备变更信息为wm_devicechange消息,wm_devicechange消息是终端设备的操作系统在检测到usb接口有设备插拔时生成的。

进一步地,wm_devicechange消息携带有wparam值,通过携带不同的wparam值标识插入动作和拨出动作。

wm_devicechange消息还携带lparam值,lparam值中有生产商的编号vid和生产商内部的产品编号pid的信息;通过lparam值中携带的vid和pid信息,标识所插拔的头戴显示设备的设备信息。

图4为本发明另一个实施例提供的一种实现头戴显示设备热插拔的装置的功能结构示意图。如图4所示,实现头戴显示设备热插拔的装置400包括存储器410和处理器420,存储器410和处理器420之间通过内部总线430通讯连接,存储器410存储有能够被处理器420执行的实现头戴显示设备热插拔的计算机程序411,该实现头戴显示设备热插拔的计算机程序411被处理器420执行时能够实现图1中所示的方法步骤。

在不同的实施例中,存储器410可以是内存或者非易失性存储器。其中非易失性存储器可以是:存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。内存可以是:ram(radomaccessmemory,随机存取存储器)、易失存储器、非易失性存储器、闪存。进一步,非易失性存储器和内存作为机器可读存储介质,其上可存储由处理器420执行的实现头戴显示设备热插拔的计算机程序411。

图5为本发明一个实施例提供的一种智能终端的结构示意图。如图5所示,该终端设备500包括如图3所示的实现头戴显示设备热插拔的装置300。

终端设备500,用于运行与头戴显示设备关联的应用程序。

需要说明的是,图3、图4所示的装置和图5所示的终端设备的各实施例与图1所示方法的各实施例对应相同,上文已有详细说明,在此不再赘述。

综上所述,本发明的技术方案,通过监听到的终端设备的设备变更信息,识别头戴显示设备的插拔动作,当识别到头戴设备的插拔动作时,获取头戴显示设备中的采集数据,将采集数据发送给正在运行的应用程序,以便所述正在运行的应用程序根据所述采集数据完成对应的应用操作。这样,即使头戴显示设备在应用程序运行过程中插入,正在运行的应用程序也可以正常的获取到采集数据,并进行相应的操作,不需要用户重新启动应用程序,操作简单,增强用户体验。

以上所述,仅为本发明的具体实施方式,在本发明的上述教导下,本领域技术人员可以在上述实施例的基础上进行其他的改进或变形。本领域技术人员应该明白,上述的具体描述只是更好的解释本发明的目的,本发明的保护范围应以权利要求的保护范围为准。

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