传输触控数据的方法和触控显示设备与流程

文档序号:18187588发布日期:2019-07-17 05:25阅读:332来源:国知局
传输触控数据的方法和触控显示设备与流程

本发明涉及投屏技术领域,具体涉及一种传输触控数据的方法和触控显示设备。



背景技术:

目前,市场上流行的投屏技术可实现将发送端设备如手机、平板等的显示屏投放到另一接收端设备如触控显示设备的显示屏上。

然而,市场上的投屏技术基本都存在单向投屏和互动的局限性,即,在整个投屏过程中接收端设备都只能被动的接受发送端设备的单向触控,因而,并不能实现将接收端设备的触控数据反向回传给发送端设备。



技术实现要素:

有鉴于此,本发明实施例提供了一种传输触控数据的方法和触控显示设备,能够实现触控显示设备以无线的方式将触控数据反向回传给发送端设备。

在本发明实施例的第一方面,本发明实施例提供了一种传输触控数据的方法,包括:触控显示设备建立与发送端设备之间的蓝牙链路;触控显示设备针对发送端设备创建虚拟的人机交互设备hid多点触控multitouch设备;触控显示设备利用hidmultitouch设备并通过蓝牙链路将触控数据传输给发送端设备。

在本发明一实施例中,上述触控显示设备利用hidmultitouch设备并通过蓝牙链路将触控数据传输给发送端设备,包括:触控显示设备利用发送端设备发送的第一触控参数构造hidmultitouch设备兼容的hid报告描述符;触控显示设备通过蓝牙链路将hid报告描述符发送给发送端设备,以完成hidmultitouch设备的声明;触控显示设备获取触控数据;触控显示设备将触控数据封装成hid报告;触控显示设备通过蓝牙链路将hid报告传输给发送端设备,以便于发送端设备从hid报告中解析触控数据,并根据触控数据做出相应的动作。

在本发明一实施例中,触控显示设备支持android系统,上述触控显示设备获取触控数据,包括:触控显示设备从android系统的view控件上注册view.ontouchlistener()实例;触控显示设备通过调用view.ontouchlistener()实例的ontouch()方法捕获motionevent对象;触控显示设备从motionevent对象中获取触控数据。

在本发明一实施例中,上述触控显示设备利用发送端设备发送的第一触控参数构造hidmultitouch设备兼容的hid报告描述符,包括:触控显示设备接收发送端设备发送的第一触控参数;触控显示设备结合第一触控参数和触控显示设备的第二触控参数构造hidmultitouch设备兼容的hid报告描述符。

在本发明一实施例中,第一触控参数包括发送端设备的屏幕的尺寸和屏幕支持的触控点数。

在本发明一实施例中,上述触控显示设备建立与发送端设备之间的蓝牙链路,包括:触控显示设备通过调用静态getdefaultadapter()方法获取表示触控显示设备的bluetoothadapter类;触控显示设备通过调用bluetoothadapter类的listenusingrfcommwithservicerecord(string,uuid)方法获取bluetoothserversocket类;触控显示设备通过调用bluetoothserversocket类的accept()方法开始侦听连接请求;触控显示设备接受发送端设备通过调用bluetoothservice类的createrfcommsockettoservicerecord()方法获取bluetoothsocket类并通过调用bluetoothsocket类的connect()方法向触控显示设备发送的第一连接请求。

在本发明一实施例中,触控数据包括用户在触控显示设备上进行的触控操作的触控点数、坐标和时间戳中的一个或多个。

在本发明一实施例中,发送端设备包括带有蓝牙功能的手机、台式计算机或笔记本电脑。

在本发明实施例的第二方面,本发明实施例提供了一种触控显示设备,包括:建立模块,用于触控显示设备建立与发送端设备之间的蓝牙链路;创建模块,用于触控显示设备针对发送端设备创建虚拟的人机交互设备hid多点触控multitouch设备;传输模块,用于触控显示设备利用hidmultitouch设备并通过蓝牙链路将触控数据传输给发送端设备。

在本发明实施例的第三方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机可执行指令,上述可执行指令被处理器执行时实现如本发明实施例的第一方面提供的传输触控数据的方法。

根据本发明实施例提供的一种传输触控数据的方法和触控显示设备,通过触控显示设备建立与发送端设备之间的蓝牙链路,实现触控显示设备和发送端设备之间的无线连接;并且,触控显示设备针对发送端设备创建虚拟的人机交互设备hid多点触控multitouch设备,利用hidmultitouch设备并通过蓝牙链路实现将触控数据传输给发送端设备,从而实现将触控显示设备的触控数据反向回传给发送端设备。

附图说明

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

图1是本发明一实施例提供的一种传输触控数据的方法的流程示意图。

图2是本发明另一实施例提供的一种传输触控数据的方法的流程示意图。

图3是本发明一实施例提供的一种触控显示设备的框图。

图4是本发明一实施例提供的一种传输触控数据的控制系统的框图。

具体实施方式

下面将结合本发明实施例中所需要使用的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显而易见地,下面描述的附图仅是本发明一部分实施例,而不是全部的实施例。

需要说明的是,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有相关实施例,都属于本发明保护的范围。

还需要说明的是,本发明实施例中的“第一”、“第二”、“第三”仅仅是为了彼此之间相互区分,并不用于限定具有固定的顺序,也不用于限定具有固定的数量。

本发明实施例中提供了一种传输触控数据的方法和触控显示设备,以下分别进行详细说明。

图1是本发明一实施例提供的一种传输触控数据的方法的流程示意图。该方法可以由电子设备(如触控显示设备)执行。如图1所示,该方法包括如下步骤。

s10:触控显示设备建立与发送端设备之间的蓝牙链路。

具体而言,触控显示设备与发送端设备之间通过蓝牙连接,从而建立触控显示设备与发送端设备之间的蓝牙链路。

蓝牙链路可以是以触控显示设备为服务器端建立与发送端设备之间的蓝牙链路,也可以是以发送端设备为服务器端建立与触控显示设备之间的蓝牙链路,还可以是触控显示设备与发送端设备建立过一次蓝牙链路后自动识别而建立的蓝牙链路,本发明实施例对此不做具体限定。

触控显示设备可以是具有触控功能的显示屏、墙面、白板、投影屏幕等,发送端设备可以是具有显示功能的手机、ipad、电脑等,本发明实施例对此不做具体限定。

s20:触控显示设备针对发送端设备创建虚拟的人机交互设备hid多点触控multitouch设备。

具体而言,触控显示设备针对发送端设备创建虚拟的人机交互设备多点触控设备,即hidmultitouch设备。其中,hidmultitouch设备是基于humaninterfacedevice(人机交互设备,hid)协议创建的多点触摸(multitouch)设备。

s30:触控显示设备利用hidmultitouch设备并通过蓝牙链路将触控数据传输给发送端设备。

具体而言,当触控显示设备将触控显示设备的触控数据通过hidmultitouch设备处理后并通过蓝牙链路传输给发送端设备,发送端设备对触控数据进行解析,并根据触控数据做出相应的动作。

应当理解,当发送端设备将发送端设备的第一触控数据通过蓝牙链路传输给触控显示设备时,触控显示设备的hidmultitouch设备接收该第一触控数据,并将该第一触控数据进行解析,根据第一触控数据做出相应的动作,本发明实施例对发送端设备如何对触控显示设备的触控数据进行解析及如何对第二触控数据进行处理后发送给触控显示设备不做具体限定。

根据本发明实施例提供的一种传输触控数据的方法,通过触控显示设备建立与发送端设备之间的蓝牙链路,实现触控显示设备和发送端设备之间的无线连接,并且,触控显示设备针对发送端设备创建虚拟的人机交互设备hid多点触控multitouch设备,利用hidmultitouch设备对触控数据进行处理,并通过蓝牙链路将触控数据传输给发送端设备,从而实现触控显示设备将触控数据反向回传给发送端设备。

在本发明一实施例中,触控数据包括用户在触控显示设备上进行的触控操作的触控点数、坐标和时间戳中的一个或多个。

触控数据包括但不限于用户在触控显示设备上进行的触控操作的触控点数、坐标和时间戳中的任何一个或多个的组合。

在本发明一实施例中,发送端设备包括带有蓝牙功能的手机、台式计算机或笔记本电脑。

发送端设备包括但不限于带有蓝牙功能的手机、台式计算机或笔记本电脑。

图2是本发明另一实施例提供的一种传输触控数据的方法的流程示意图。图2是图1实施例的例子。s11-s14是图1实施例中步骤s10的一种具体实施方式,s31-s35是图1实施例中步骤s30的一种具体实施方式。该方法可以由电子设备(如触控显示设备)执行。如图2所示,该方法包括如下步骤。

s11:触控显示设备通过调用静态getdefaultadapter()方法获取表示触控显示设备的bluetoothadapter类。

具体而言,触控显示设备调用静态getdefaultadapter()方法会获取到表示触控显示设备自身的蓝牙适配器(bluetoothadapter)类。

s12:触控显示设备通过调用bluetoothadapter类的listenusingrfcommwithservicerecord(string,uuid)方法获取bluetoothserversocket类。

具体而言,触控显示设备调用bluetoothadapter类的listenusingrfcommwithservicerecord(string,uuid)方法,bluetoothadapter类根据触控显示设备的名称和uuid创建并返回bluetoothserversocket类,从而触控显示设备获取到bluetoothserversocket类。

s13:触控显示设备通过调用bluetoothserversocket类的accept()方法开始侦听连接请求。

具体而言,触控显示设备通过调用bluetoothserversocket类的accept()方法,开始侦听其他设备的连接请求。

s14:触控显示设备接受发送端设备通过调用bluetoothservice类的createrfcommsockettoservicerecord()方法获取bluetoothsocket类并通过调用bluetoothsocket类的connect()方法向触控显示设备发送的第一连接请求。

具体而言,发送端设备通过调用bluetoothservice类的createrfcommsockettoservicerecord()方法获取bluetoothsocket类,并通过调用bluetoothsocket类的connect()方法向触控显示设备发送第一连接请求,触控显示设备接受该第一连接请求,从而实现触控显示设备与发送端设备之间通过蓝牙链路连接。另外,连接成功后,触控显示设备还可以通过调用bluetoothserversocket类的close()方法关闭bluetoothserversocket类的accept()方法,本发明实施例对此不做具体限定。

发送端设备可以是通过bluetoothsocket类的getinputstream()方法和getoutputstream()方法获取输入流(inputstream)和输出流(outputstream),read(byte[])从输入流(inputstream)中读取数据,write(byte[])将数据写入到输出流中去。

该步骤s11-s14是以触控显示设备为服务器端为例,建立与发送端设备之间的蓝牙链路的一种实现方式。触控显示设备通过保持开放的蓝牙服务器套接字(bluetoothserversocket)类来充当服务器,bluetoothserversocket类用于侦听连接请求,并在接受发送端设备的连接请求后提供已连接的bluetoothsocket类,从而实现触控显示设备与发送端设备之间蓝牙链路的连接。

s20:触控显示设备针对发送端设备创建虚拟的人机交互设备hid多点触控multitouch设备。

s31:触控显示设备利用发送端设备发送的第一触控参数构造hidmultitouch设备兼容的hid报告描述符。

具体而言,发送端设备将发送端设备自身的第一触控参数发送给触控显示设备,触控显示设备接收该第一触控参数。触控显示设备利用该第一触控参数并根据hid协议标准,构造hidmultitouch设备兼容的hid报告描述符(hidreportdescriptor)。

在本发明一实施例中,第一触控参数包括发送端设备的屏幕的尺寸和屏幕支持的触控点数。

具体而言,第一触控参数为发送端设备自身的触控参数,包括但不限于发送端设备的屏幕的尺寸和屏幕支持的触控点数。

应当理解,第二触控参数为触控显示设备自身的触控参数,包括但不限于触控显示设备的屏幕的尺寸和屏幕支持的触控点数。

在本发明一实施例中,上述触控显示设备利用发送端设备发送的第一触控参数构造hidmultitouch设备兼容的hid报告描述符,包括:触控显示设备接收发送端设备发送的第一触控参数;触控显示设备结合第一触控参数和触控显示设备的第二触控参数构造hidmultitouch设备兼容的hidreportdescriptor。

本实施例中,触控显示设备结合发送端设备的第一触控参数和触控显示设备自身的第二触控参数,构造hidmultitouch设备兼容的hidreportdescriptor,其中,hidreportdescriptor可以是使用hiddescriptortool来生成。通过构造hidreportdescriptor来描述一个报告以及报告里面的数据是用来干什么用的。

s32:触控显示设备通过蓝牙链路将hid报告描述符发送给发送端设备,以完成hidmultitouch设备的声明。

具体而言,触控显示设备通过蓝牙链路将hidreportdescriptor发送给发送端设备,发送端设备接收该hidreportdescriptor,从而完成hidmultitouch设备的声明,以声明触控显示设备与发送端设备之间通过hidmultitouch设备建立触控数据传输的连接。

s33:触控显示设备获取触控数据。

在本发明一实施例中,上述触控显示设备获取触控数据,包括:触控显示设备从android系统的view控件上注册view.ontouchlistener()实例;触控显示设备通过调用view.ontouchlistener()实例的ontouch()方法捕获motionevent对象;触控显示设备从motionevent对象中获取触控数据。

本实施例中,以android系统为例,触控显示设备通过从view控件上注册view.ontouchlistener()实例,并通过调用view.ontouchlistener()实例的ontouch()方法捕获motionevent对象,从而触控显示设备从motionevent对象中获取触控数据。应当理解,还可以是其他获取触控数据的方式,不同的系统如android系统、iso系统可以根据系统的需求选择不同的获取触控数据的方式。

s34:触控显示设备将触控数据封装成hid报告。

具体而言,触控显示设备将触控数据封装成hid报告(hidreport),以便于触控显示设备通过hid报告将触控数据回传给发送端设备。

s35:触控显示设备通过蓝牙链路将hid报告传输给发送端设备,以便于发送端设备从hid报告中解析触控数据,并根据触控数据做出相应的动作。

具体而言,触控显示设备通过蓝牙链路将hidreport传输给发送端设备;发送端设备接收hidreport,并从hidreport中解析触控数据,从而发送端设备根据该可识别的触控数据做出相应的动作。应当理解,将触控显示设备的触控数据转换成发送端设备可识别的触控数据可在触控显示设备上实现,本发明实施例对此不做具体限定。

例如,触控数据为点击播放音乐按钮的触控数据,触控显示设备将点击播放音乐按钮的触控数据以hidreport的格式封装成一个hidreport,并通过蓝牙链路传输给发送端设备。发送端设备通过对该hidreport进行解析,解析得到点击播放音乐按钮的触控数据,发送端设备根据该触控数据点击发送端设备上的播放音乐按钮。

根据本发明实施例提供的一种传输触控数据的方法,触控显示设备通过调用静态getdefaultadapter()方法获取表示触控显示设备的bluetoothadapter类;触控显示设备通过调用bluetoothadapter类的listenusingrfcommwithservicerecord(string,uuid)方法获取bluetoothserversocket类;触控显示设备通过调用bluetoothserversocket类的accept()方法开始侦听连接请求;触控显示设备接受发送端设备通过调用bluetoothservice类的createrfcommsockettoservicerecord()方法获取bluetoothsocket类并通过调用bluetoothsocket类的connect()方法向触控显示设备发送的第一连接请求,从而实现触控显示设备与发送端设备之间蓝牙链路的连接。另外,触控显示设备针对发送端设备创建hidmultitouch设备;触控显示设备利用发送端设备发送的第一触控参数构造hidmultitouch设备兼容的hidreportdescriptor;触控显示设备通过蓝牙链路将hidreportdescriptor发送给发送端设备,以完成hidmultitouch设备的声明;触控显示设备获取触控数据;触控显示设备将触控数据封装成hidreport;触控显示设备通过蓝牙链路将hidreport传输给发送端设备,以便于发送端设备从hidreport中解析触控数据,并根据触控数据做出相应的动作,从而实现触控显示设备将触控数据反向回传给发送端设备。

上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。

下述为本发明中一种触控显示设备的实施例,可以用于执行本发明方法实施例。对于本发明中一种触控显示设备的实施例中未披露的细节,请参照本发明方法实施例。

图3是本发明一实施例提供的一种触控显示设备30的框图。

上述触控显示设备30包括:建立模块100,用于触控显示设备建立与发送端设备之间的蓝牙链路;第一创建模块200,用于触控显示设备针对发送端设备创建虚拟的人机交互设备hid多点触控multitouch设备;第一传输模块300,用于触控显示设备利用hidmultitouch设备并通过蓝牙链路将触控数据传输给发送端设备。

在本发明一实施例中,第一传输模块300包括:第一构造模块310,用于触控显示设备利用发送端设备发送的第一触控参数构造hidmultitouch设备兼容的hid报告描述符;发送模块320,用于触控显示设备通过蓝牙链路将hid报告描述符发送给发送端设备,以完成hidmultitouch设备的声明;第一获取模块330,用于触控显示设备获取触控数据;封装模块340,用于触控显示设备将触控数据封装成hid报告;第二传输模块350,用于触控显示设备通过蓝牙链路将hidreport传输给发送端设备,以便于发送端设备将触控数据进行解析并根据触控数据做出相应的动作。

在本发明一实施例中,第一获取模块330包括:注册模块331,用于触控显示设备从android系统的view控件上注册view.ontouchlistener()实例;捕获模块332,用于触控显示设备通过调用view.ontouchlistener()实例的ontouch()方法捕获motionevent对象;第二获取模块333,用于触控显示设备从motionevent对象中获取触控数据。

在本发明一实施例中,第一构造模块310包括:接收模块311,用于触控显示设备接收发送端发送的第一触控参数;第二构造模块312,用于触控显示设备结合第一触控参数和触控显示设备的第二触控参数构造hidmultitouch设备兼容的hid报告描述符。

在本发明一实施例中,第一触控参数包括发送端设备的屏幕的尺寸和屏幕支持的触控点数。

在本发明一实施例中,建立模块100包括:第三获取模块110,用于触控显示设备通过调用静态getdefaultadapter()方法获取表示触控显示设备的bluetoothadapter类,并用于触控显示设备通过调用bluetoothadapter类的listenusingrfcommwithservicerecord(string,uuid)方法获取bluetoothserversocket类;侦听模块120,用于触控显示设备通过调用bluetoothserversocket类的accept()方法开始侦听连接请求;接受模块130,用于触控显示设备接受发送端设备通过调用bluetoothservice类的createrfcommsockettoservicerecord()方法获取bluetoothsocket类并通过调用bluetoothsocket类的connect()方法向触控显示设备发送的第一连接请求。

在本发明一实施例中,触控数据包括用户在触控显示设备上进行的触控操作的触控点数、坐标和时间戳中的一个或多个。

在本发明一实施例中,发送端设备包括带有蓝牙功能的手机、台式计算机或笔记本电脑。

图4是本发明一实施例提供的一种传输触控数据的控制系统40的框图。

参照图4,控制系统40包括处理组件410,其进一步包括一个或多个处理器,以及由存储器420所代表的存储器资源,用于存储可由处理组件410的执行的指令,例如应用程序。存储器420中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件410被配置为执行指令,以执行上述传输触控数据的方法。

一种非临时性计算机可读存储介质,当存储介质中的指令由上述控制系统40的处理器执行时,使得上述控制系统40能够执行一种传输触控数据的方法,该方法由代理程序执行,该方法包括:触控显示设备建立与发送端设备之间的蓝牙链路;触控显示设备针对发送端设备创建虚拟的人机交互设备hid多点触控multitouch设备;触控显示设备利用hidmultitouch设备通过蓝牙链路将触控数据传输给发送端设备。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

本领域的技术人员可以清楚的了解到,为了描述的方便和简洁,上述描述的触控显示设备和传输触控数据的控制系统的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法、触控显示设备、和控制系统,可以通过其它的方式实现。例如,以上所描述的触控显示设备实施例仅仅是示意性的,例如,上述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件或单元可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

上述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。还需要说明的是,本发明实施例中各技术特征的组合方式并不限本发明实施例中所记载的组合方式或是具体实施例所记载的组合方式,本案所记载的所有技术特征可以以任何方式进行自由组合或结合,除非相互之间产生矛盾。

需要注意的是,以上列举的仅为本发明的具体实施例,显然本发明不限于以上实施例,随之有着许多的类似变化。本领域的技术人员如果从本发明公开的内容直接导出或联想到的所有变形,均应属于本发明的保护范围。

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

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