CN105607859B - 一种数据处理方法和装置 - Google Patents

一种数据处理方法和装置 Download PDF

Info

Publication number
CN105607859B
CN105607859B CN201610119359.XA CN201610119359A CN105607859B CN 105607859 B CN105607859 B CN 105607859B CN 201610119359 A CN201610119359 A CN 201610119359A CN 105607859 B CN105607859 B CN 105607859B
Authority
CN
China
Prior art keywords
touch
event
touch event
current
historical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610119359.XA
Other languages
English (en)
Other versions
CN105607859A (zh
Inventor
山宝银
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201610119359.XA priority Critical patent/CN105607859B/zh
Publication of CN105607859A publication Critical patent/CN105607859A/zh
Priority to PCT/CN2017/075436 priority patent/WO2017148412A1/zh
Priority to JP2018544546A priority patent/JP6682645B2/ja
Priority to KR1020187027414A priority patent/KR102155229B1/ko
Priority to EP17759263.1A priority patent/EP3425491B1/en
Priority to US16/046,725 priority patent/US10558351B2/en
Application granted granted Critical
Publication of CN105607859B publication Critical patent/CN105607859B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/214Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
    • A63F13/2145Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/31Communication aspects specific to video games, e.g. between several handheld game devices at close range
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/32Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections
    • A63F13/323Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections between game devices with different hardware characteristics, e.g. hand-held game devices connectable to game consoles or arcade machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/038Indexing scheme relating to G06F3/038
    • G06F2203/0384Wireless input, i.e. hardware and software details of wireless interface arrangements for pointing devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请提供了一种数据处理方法和装置,该方法接收控制端发送的当前数据包,该当前数据包包括当前触摸事件以及当前触摸事件的第一标识;判断是否丢失该当前数据包关联的至少一个目标数据包;当存在至少一个目标数据包丢失时,构建该至少一个目标数据包对应的至少一个目标触摸事件;处理该至少一个目标触摸事件,以使得被控端能够识别当前触摸事件所属的触摸操作,减少由于丢包导致的控制异常。

Description

一种数据处理方法和装置
技术领域
本申请涉及数据处理技术领域,特别涉及一种数据处理方法和装置以及系统。
背景技术
随着通信技术的发展,利用具有触摸屏的智能电子设备(具有触摸屏的手机、掌上电脑等)控制另一台智能设备的技术已经被广泛应用。例如,可以利用具有触摸屏的手机控制智能游戏机。
在利用触摸屏的智能电子设备控制另一台智能设备的过程中,作为控制端的智能电子设备检测触摸屏上的触摸事件,并通过蓝牙、WiFi等无线通信方式或者有线通信方式向作为被控端的另一台智能设备发送包含有触摸事件信息的数据包,以实现对该另一台智能设备的控制。然而,在存在干扰的环境下,作为控制端的智能电子设备所发出的数据包可能无法全部被作为被控端的智能设备接收,即产生丢包现象,从而导致控制异常。
发明内容
本申请提供了一种数据处理方法和装置,以减少控制过程中,由于丢包而导致的控制异常。
为了解决上述问题,本申请提供了如下方案:
一种数据处理方法,包括:
接收控制端发送的当前数据包,所述当前数据包包括:当前触摸事件以及所述当前触摸事件的第一标识,所述第一标识用于标识触摸屏上的触摸点;
判断是否丢失所述当前数据包关联的至少一个目标数据包,其中,所述目标数据包包括目标触摸事件和所述目标触摸事件的第一标识,且所述目标触摸事件的第一标识与所述当前触摸事件的第一标识相同;
当存在所述至少一个目标数据包丢失时,构建所述至少一个目标数据包对应的至少一个所述目标触摸事件;
处理所述至少一个所述目标触摸事件,以使得被控端能够响应所述当前触摸事件所属的触摸操作对应的触摸事件。
一种数据处理装置,包括:
接收单元,用于接收控制端发送的当前数据包,所述当前数据包包括:当前触摸事件以及所述当前触摸事件的第一标识,所述第一标识用于标识触摸屏上的触摸点;
判断单元,用于判断是否丢失所述当前数据包关联的至少一个目标数据包,其中,所述目标数据包包括目标触摸事件和所述目标触摸事件的第一标识,且所述目标触摸事件的第一标识与所述当前触摸事件的第一标识相同;
事件构建单元,用于当存在所述至少一个目标数据包丢失时,构建所述至少一个目标数据包对应的至少一个所述目标触摸事件;
事件处理单元,用于处理所述至少一个所述目标触摸事件,以使得被控端能够响应所述当前触摸事件所属的触摸操作对应的触摸事件。
基于以上技术方案,在本申请实施例中,在接收到当前数据包之后,判断是否丢失该当前数据包关联的至少一个目标数据包,如果存在目标数据包丢失,则会构建该目标数据包对应的目标触摸事件并执行,从而可以减少由于包含触摸事件的数据包丢失而导致的控制异常。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一种数据处理方法一个实施例的流程示意图;
图2示出了本申请一种数据处理方法又一个实施例的流程示意图;
图3示出了两次触摸操作的触摸过程示意图;
图4示出了本申请一种数据处理方法又一个实施例的流程示意图;
图5示出了本申请一种数据处理装置一种结构示意图;
图6示出了本申请一种智能设备一个实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请适用于利具有触摸屏的智能电子设备控制另一台智能设备的场景。作为控制端的智能电子设备具有触摸屏,如控制端可以为具有触摸屏的手机、掌上电脑、平板电脑等等;而作为被控端的智能设备具备计算处理能力,但是可以不具有触摸屏或显示屏。
其中,作为控制端的智能电子设备可以与作为被控端的智能设备通过有线或者无线方式相连,如控制端与被控端可以通过蓝牙、WiFi等无线方式相连,也可以是通过通用串行总线(USB,Universal SerialBus)等物理线路直接相连。
作为控制端的智能电子设备可以检测用户在触摸屏上的触摸动作,并生成触摸事件,然后将触摸事件以数据包的形式发送给作为被控端的智能设备。作为被控端的智能设备接收到控制端发送的数据包后,解析该数据包中包含的触摸事件,并执行该触摸事件,以响应用户的操作行为。例如,以手机控制游戏机为例,用户可以在触摸屏手机上输出触摸动作,而手机检测到触摸动作并生成触摸事件,游戏机接收到触摸事件后作出响应,以使得游戏机的游戏界面的产生相应动作。
参见图1,其示出了本申请一种数据处理方法一个实施例的流程示意图,本实施例的方法可以包括:
101,接收控制端发送的当前数据包。
其中,该当前数据包包括:当前触摸事件以及该当前触摸事件的第一标识。其中,第一标识用于标识触摸屏上的触摸点。其中,触摸屏上同一时刻存在的多个触摸点具有不同的第一标识。
该第一标识为目前触摸屏设备中为了区分触摸屏上同时存在的多点所采用的一种标识方式。为了便于理解,举例说明,如,触摸屏上同时存在三个触摸点,则这三个触摸点的第一标识可以分别标识为point ID0、point ID1和point ID2。假如某一时刻这三个触摸点均抬起,则在当前时刻之后再次从触摸屏上检测到两个触摸点时,则为该触摸屏的两个触摸点依次分配第一标识为point ID0和point ID1;假如这三个触摸点中point ID1标识的触摸点被抬起,则第一标识point ID1被释放,如果当前时刻之后再次接收到两个触摸点,则此处触摸屏上同时存在四个触摸点,由于第一标识:point ID0和point ID2被占用,则为后续接收到的这两个触摸点分别分配第一标识:point ID1和point ID3。
102,判断是否丢失该当前数据包关联的至少一个目标数据包。
其中,当前数据包关联的目标数据包为导致该当前触摸事件所属的一次触摸操作无法被被控端识别的数据包。其中,如果该目标数据包内的目标触摸事件丢失,会导致被控端无法识别该当前触摸事件,或者是虽然能够识别该当前触摸事件,但是被控端却无法终止该当前触摸事件。
在实际应用中,用户的一次触摸操作是一次连续的触控动作,相应的生成的触摸控制事件也是由连续的触摸事件序列组成的。而触摸事件序列可以依次包括:触摸按压事件,触摸滑动事件,触摸抬起事件。其中,触摸滑动事件可以为可选的,也就是说,触摸事件序列也可以仅仅包括触摸按压事件和触摸抬起事件。
例如,用户在触摸屏上的一次触摸操作可以是先触按屏幕,然后在屏幕上滑动,最后是触点抬起,则得到触摸事件序列依次可以为:触摸按压事件,触摸滑动事件,触摸抬起事件;而用户的一次触摸操作也可以是先触按屏幕,然后抬起触点,则得到触摸事件序列依次:触摸按压事件和触摸抬起事件。
基于该触摸事件序列可知,在接收到某个触摸点的触摸按压事件后,如果没有接收到由该触摸点触发的触摸抬起事件,则说明存在该触摸点对应的触摸抬起事件的丢失,这样就会导致被控端无法确定该次触摸操作是否结束;相应的,如果被控端未接收到该触摸点的触摸按压事件,而仅仅接收到该触摸点的触摸抬起事件,则说明丢失了该触摸点的触摸按压事件,导致触摸抬起事件之前没有对应的触摸按压事件,使得接收到的触摸事件与该触摸事件序列的事件顺序不符,导致被控端无法识别该触摸抬起事件。
可以理解的是,只有当该目标数据包包括的目标触摸事件的第一标识与该当前触摸事件的第一标识相同时,被控端才会将两次触摸事件认为是同一个触摸点通过一次触摸操作产生的触摸事件。而正是因此,如果由同一个第一标识表示的两次相邻触摸操作所产生的某个触摸事件丢失,才会导致被控端无法按照触摸事件序列识别先后接收到的触摸事件,因此,当前数据包关联的至少一个目标数据包可以为包括目标触摸事件和目标触摸事件的第一标识的数据包,且该目标触摸事件的第一标识与该当前触摸事件的第一标识相同。
可以理解的是,在本申请实施例中,该至少一个目标数据包可以为在被控端发送该当前数据包之前发出的数据包,也可以是在发送该当前数据包之后发出的数据包。
103,当存在至少一个目标数据包丢失时,构建该至少一个目标数据包对应的至少一个目标触摸事件。
其中,构建该目标触摸事件可以理解为构建表征该目标触摸事件的代码或者指令等。
104,处理该至少一个目标触摸事件,以使得被控端能够响应该当前触摸事件所属的触摸操作对应的触摸事件。
在确定出丢失的数据包为包含目标触摸事件的目标数据包之后,重新构建该目标数据包中的目标触摸事件,弥补了由于触摸控制序列中触摸事件的缺失,而导致被控端无法识别当前触摸事件或者无法终止该当前触摸事件的情况。
其中,处理该至少一个目标触摸事件具体可以是发送到被控端的操作系统的驱动层,以在驱动层执行该目标触摸事件。
可以理解的是,由于丢失的目标数据包可以是在该当前数据包之前发送的数据包,也可以是在该当前数据包之后发送的数据包,而被控端执行数据包内的触摸事件的先后顺序是以触摸事件的实际发送顺序为依据的。因此,如果该目标数据包为发送端在发送该当前数据包之前发送的数据包,则被控端的驱动层需要先执行该目标数据包的目标触摸事件,然后才执行该当前触摸事件;而如果该目标数据包为被控端在发送该当前数据包之后发送的触摸事件,则在该驱动层执行该目标触摸事件之前,该驱动层已经执行了该当前触摸事件。
而当该目标数据包与当前数据包确定后,这两个数据包的生成顺序便是确定的,即该至少一个目标数据包对应的至少一个目标触摸事件与所述当前触摸事件之间具有指定的生成顺序,因此可选的,可以基于该指定的生成顺序,处理至少一个目标触摸事件,以使得被控端处理该至少一个目标触摸事件以及该当前触摸事件的先后顺序与该生成顺序相同。
例如,目标数据包为触摸按压事件,而当前数据包为触摸抬起事件,同时可以确定出发送端先发出目标数据包,然后发送该当前数据包,则构建出目标数据包对应的触摸按压事件后,将该触摸按压事件发送到驱动层执行,然后将当前数据包的触摸抬起事件发送到驱动层执行。
本申请实施例中,被控端接收到当前数据包之后,依据当前数据包的包括的当前触摸事件的第一标识,判断是否丢失该当前数据包关联的至少一个目标数据包,如果存在目标数据包丢失,则会构建该目标数据包对应的目标触摸事件并执行,从而可以减少由于包含触摸事件的数据包丢失而导致的控制异常。
可以理解的是,当被控端发出的目标数据包与当前数据包的前后顺序不同,被控端判断是否丢失该当前数据包关联的目标数据包的过程也可能有所不同。
下面分别针对不同种确定丢失的目标数据包的方式进行介绍。
参见图2,其示出了本申请一种数据处理方法又一个实施例的流程示意图,本实施例的方法可以包括:
201,接收控制端发送的当前数据包。
其中,该当前数据包包括:当前触摸事件以及该当前触摸事件的第一标识。其中,第一标识用于标识触摸屏上的触摸点。
202,当接收到该当前数据包时,获取最近一次接收到的历史数据包。
其中,历史数据包包括:历史触摸事件以及该历史触摸事件的第一标识。需要说明的是,该步骤202中获取的历史数据包为包含的历史触摸事件的第一标识与该当前触摸事件的第一标识相同的数据包。
在本实施例中接收到包含触摸事件的数据包时,则会记录该触摸事件相应的状态信息,如触摸事件的事件内容(例如,触摸事件为触摸抬起事件)、触摸事件的第一标识。当然,触摸事件的状态信息还可以包括:触摸事件的触摸位置坐标、触摸事件发生时间等等。
203,依据预设的触摸事件序列,检测该历史触摸事件与该当前触摸事件之间是否丢失至少一个目标触摸事件。
其中,该触摸事件序列可以依次包括:触摸按压事件,触摸滑动事件,触摸抬起事件。当然,也可以设定触摸事件序列可以依次包括:触摸按压事件,触摸抬起事件。
可以理解的是,当历史触摸事件与当前触摸事件的第一标识相同时,历史触摸事件与当前触摸事件的先后顺序应该符合触摸事件序列的序列循环执行次序,即具有相同第一标识的连续多个触摸事件序列应该为:触摸按压事件、触摸滑动事件(可以有连续多个触摸滑动事件)、触摸抬起事件、触摸按压事件、触摸滑动事件……这样一个循环序列。其中,触摸滑动事件为可选的。因此,由该循环序列可以确定历史触摸事件与当前触摸事件之间的可能情况,如果历史触摸事件与当前触摸事件之间不满足该循环序列,则说明存在数据包丢失,同时根据该循环序列可以确定丢失了哪一个或几个触摸事件的数据包。
例如,在控制端的触摸屏上位置点A处的触摸点A的第一标识为point ID0,由触摸点A所触发事件依次为:触摸按压事件A1、触摸抬起事件A2;在触摸点A抬起后,触摸屏的位置点B新增触摸点B,且为触摸点B的第一标识也为point ID0,假设由触摸点依次触发的触摸事件为触摸按压事件B1、触摸移动事件B2。而假设当前时刻被控端接收到控制端发送的当前数据包中包括触摸移动事件B2,如果被控端最近一次接收到的具有第一标识的历史数据包为包括该触摸抬起事件A2,而根据触摸事件序列可知,触摸按压事件不可能会出现触摸移动事件,则说明丢失了该触摸移动事件B2对应的触摸按压事件B1。
当然,在实际应用中,按照该触摸事件序列检测该历史触摸事件与该当前触摸事件之间是否丢失至少一个目标触摸事件的方式可以有多种。
可选的,一种检测方式可以为:如果当前触摸事件是触摸按压事件,判断该历史触摸事件是否为触摸抬起事件,如果否,则确定历史触摸事件与该当前触摸事件之间丢失该触摸事件序列中的触摸抬起事件,且丢失的触摸抬起事件与历史触摸事件属于同一次触摸操作;
如果当前触摸事件不是该触摸按压事件,判断该历史触摸事件是否为所述触摸按压事件或触摸移动事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸按压事件,且丢失的触摸按压事件与所述当前触摸事件属于同一次触摸操作。
当然,还可以根据触摸事件序列,预先分析出在历史触摸事件和当前触摸事件为各种可能的触摸事件的情况下,丢失的目标触摸事件的可能情况,然后生成包含历史触摸事件、当前触摸事件以及丢失的目标触摸事件的对应表,然后通过查询该对照表,便可以确定该丢失的目标触摸事件。
如,可以参看如下表格1:
表1
其中,表1中的(x,y)与(x',y')用于表示两个触摸事件的触摸位置点,其中,(x,y)与(x',y')可以是两个相同的位置点,也可以是两个不同的位置点。
DOWN代表触摸按压事件,如,DOWN(x,y)表示在位置点(x,y)处的触摸按压事件;Move表示触摸移动事件;UP表示触摸抬起事件。N/A表示不存在触摸事件丢失。
例如,以当前触摸事件为触摸按压事件DOWN(x,y),历史触摸事件为DOWN(x',y'),则通过表1可知,存在触摸抬起事件丢失,且该触摸抬起事件与该历史触摸事件DOWN(x',y')为同一次触摸操作,即丢失在位置点(x',y')处的触摸抬起事件UP(x',y')。
204,当存在至少一个目标数据包丢失时,构建该至少一个目标数据包对应的至少一个目标触摸事件。
确定出丢失了包含哪个目标触摸事件之后,可以直接构建该目标触摸事件。
可选的,在实施例中,当前数据包还包括:当前触摸事件的触摸位置坐标;相应的,历史数据包还包括:历史触摸事件的触摸位置坐标。这样,当确定出的目标触摸事件仅仅是确定出丢失的哪种类型的触摸事件时,可以根据该当前触摸事件的触摸坐标位置或该历史触摸事件的触摸位置坐标,确定该至少一个目标触摸事件的触摸位置坐标。依据至少一个目标触摸事件的触摸位置坐标,构建至少一个包含有触摸位置坐标的目标触摸事件。
如,当前触摸事件与该目标触摸事件属于同一次触摸操作,则将该当前触摸事件的触摸位置坐标作为该目标触摸事件的位置坐标;如果该历史触摸事件与该目标触摸事件属于同一次触摸操作,则将该历史触摸事件的触摸位置坐标作为该目标触摸事件的位置坐标。
当然,在当前触摸事件以及历史触摸事件均包括触摸位置坐标的情况下,在步骤203中确定出的目标触摸事件具体可以是在目标位置坐标处的目标触摸事件。其中,该目标位置坐标可以如前面所提到的依据该目标触摸事件与当前触摸事件或历史触摸事件是否为同一次触摸操作来确定,也可以是按照表1形式确定出的。
205,处理该至少一个目标触摸事件,以使得被控端能够识别该标识信息表征的触摸操作。
在本实施例中可以是先将该构建出的目标触摸事件发送到驱动层执行,然后再将该当前触摸事件发送到驱动层执行。
可以理解的是,当历史触摸事件与当前触摸事件不属于不同次触摸事件时,利用图2实施例的方式则可能无法全部确定出所有丢失的目标触摸事件,这样,仅仅按照实施例2的方式虽然可以减少控制异常的情况,但是却可能无法提高控制精准度。
如,参见表1,如果当前触摸事件为MOVE(x,y),而历史触摸事件为MOVE(x',y')时,按照表1可以确定不存在历史触摸事件丢失,但是有可能用户在控制端的触摸屏上的位置点(x,y)进行了触摸滑动之后抬起手指,此时,控制端生成的触摸事件应该为MOVE(x,y)以及UP(x,y)。而在历史触摸事件MOVE(x',y')之前,用户应该还在触摸屏上进行了触摸按压操作,如触摸按压事件DOWN(x',y')。由于表1中将当前触摸事件与历史触摸事件认为是一次触摸操作,从而导致无法确定丢失了UP(x,y)和DOWN(x',y'),这样,被控端就不会重构这两个事件,从而导致被控端的事件执行过程与用户在控制端的实际输入不符。
为了便于理解,可以参见图3所示,在图3中示出了同一和第一标识表示的两次触摸操作的触摸过程示意图。在该图3中,用户在触摸点A按压后移动然后在触摸点B抬起,完成一次触摸操作;然后,用户在触摸点C按压开始另一次触摸操作,并继续滑动,并在触摸点D抬起。由图3可以看出,如果其中的③和④表征的触摸事件丢失时,那么被控端接收到⑤表征的触摸事件为MOVE(x',y'),而被控端上一次接收到的历史触摸事件应该为②表征的MOVE(x,y),假如⑤表征的触摸事件为MOVE(x',y')与②表征的历史触摸事件MOVE(x,y)为同一次触摸操作,则不存在丢失触摸抬起事件以及触摸按压事件,而如果⑤表征的触摸事件为MOVE(x',y')与②表征历史触摸事件MOVE(x,y)是图3所示的两次触摸操作,那么则说明⑤表征的触摸事件为MOVE(x',y')所属的一次触摸操作的触摸按压事件DOWN被丢失,相应的,②表征历史触摸事件MOVE(x,y)所属的另一次触摸操作的触摸抬起操作UP被丢失。
因此,为了区分出历史触摸事件与当前触摸事件是否属于不同次触摸操作,可以在控制端为不同的触摸点分配不同的第一标识的同时,为具有第一标识的触摸点的不同次触摸操作分配一个第二标识。该第二标识用于标识具有相同的第一标识的不同次触摸操作。
相应的,被控端接收到的该当前数据包还包括:当前触摸事件的第二标识;而该历史数据包也可以包括历史触摸事件的第二标识。则,检测是否存在丢失的至少一个目标触摸事件,可以为:
依据预设的触摸事件序列,以及历史触摸事件的第二标识和当前触摸事件的第二标识,检测该历史触摸事件与所述当前触摸事件之间是否丢失至少一个目标触摸事件。
其中,根据该第二标识,可以确定历史触摸事件与该当前触摸事件是否为同一次触摸操作。这样,根据该触摸事件序列的循环次序,以及该历史触摸事件以及当前触摸事件是否为同一次触摸操作,便可以确定历史触摸事件以及该当前触摸事件之间是否存在触摸事件丢失以及丢失的目标触摸事件。
可选的,一种检测方式可以为:
如果当前触摸事件是该触摸按压事件,判断该历史触摸事件是否为该触摸抬起事件,如果否,则确定该历史触摸事件与当前触摸事件之间丢失该触摸事件序列中的触摸抬起事件,且丢失的触摸抬起事件与历史触摸事件属于同一次触摸操作;
如果当前触摸事件不是该触摸按压事件,判断该历史触摸事件是否为该触摸按压事件或触摸移动事件,如果否,则确定该历史触摸事件与该当前触摸事件之间丢失该触摸事件序列中的触摸按压事件,且丢失的触摸按压事件与该当前触摸事件属于同一次触摸操作。
如果当前触摸事件不是所述触摸按压事件,且该历史触摸事件为该触摸按压事件或触摸移动事件,则判断该历史触摸事件的第二标识是否与该当前触摸事件的第二标识相同,如果否,则确定该历史触摸事件与该当前触摸事件之前丢失该触摸事件序列中的触摸抬起事件以及触摸按压事件。其中,该触摸抬起事件与该历史触摸事件同属于一次触摸操作,该触摸按压事件与该当前触摸事件同属于一次触摸操作。
当然,在实际应用中,也可以如表1的方式预先建立历史触摸事件、当前触摸事件以及目标触摸事件的对应关系,然后通过查询表格,确定丢失的至少一次目标触摸事件。
为了便于理解,以图3丢失的情况为例,对依据预先构建出的历史触摸事件、当前触摸事件以及目标触摸事件的对应关系,确定目标触摸事件的情况进行简单介绍。
对于当前触摸事件与历史触摸事件属于不同次触摸操作的情况下,构建出的对应关系可以参见如下表2。
丢失事件 当前触摸事件 历史触摸事件 目标触摸事件
③④ MOVE(x,y) MOVE(x',y') UP(x',y')--->DOWN(x,y)
②③④ MOVE(x,y) DOWN(x',y') UP(x',y')--->DOWN(x,y)
③④⑤ UP(x,y) MOVE(x',y') UP(x',y')--->DOWN(x,y)
②③④⑤ UP(x,y) DOWN(x',y') UP(x',y')--->DOWN(x,y)
表2
需要说明的是,表2中丢失事件这一列是针对图3的情况而添加,仅仅是为了针对图3的情况对该表2中的对应关系进行验证。但是可以理解的是,表2中的对应关系同样适用于其他情况。同样适用于其他情况。
如表2可知,当丢失图3中③和④表示的触摸事件时,被控端当前接收到的当前触摸事件为MOVE(x,y),而历史触摸事件为MOVE(x',y'),且这两次触摸事件不属于同一次触摸操作,则查询表2可知,丢失的触摸事件为位置点(x',y')处的触摸抬起事件up(x',y'),以及位置点(x,y)处的触摸按压事件down(x,y)。
可选的,与图2实施例相似,在本实施例中,当前数据包还包括:当前触摸事件的触摸位置坐标;相应的,历史数据包还包括:所述历史触摸事件的触摸位置坐标;则,构建目标触摸事件时,同样可以根据该当前触摸事件的触摸坐标位置或该历史触摸事件的触摸位置坐标,确定该至少一个目标触摸事件的触摸位置坐标。依据至少一个目标触摸事件的触摸位置坐标,构建至少一个包含有触摸位置坐标的目标触摸事件。
参见图4,其示出了本申请一种数据处理方法另一个实施例的流程示意图,本实施例的方法可以包括:
401,接收控制端发送的当前数据包。
其中,该当前数据包包括:当前触摸事件以及该当前触摸事件的第一标识。其中,第一标识用于标识触摸屏上的触摸点。
402,如果该当前触摸事件不是触摸抬起事件,则从接收到该当前数据包的时刻开始,监测指定时长内是否接收到指定数据包。
其中,该指定数据包中的第一标识与该当前数据包的第一标识相同。
可以理解的是,如果当前触摸事件不是触摸抬起事件,则说明一次触摸操作仍没有结束,在该种情况下,如果长时间没有接收到同一个第一标识所标识的触摸事件,则说明该次触摸操作的触摸抬起事件的数据包已经丢失。
如,用户在控制端的触摸屏上进行触摸按压操作时,被控端当前接收到的当前数据包包含有触摸按压事件,而在当前时刻之后,用户在触摸屏上的触点抬起,但是控制端向被控端发送的包含有触摸抬起事件的数据包丢失,那么被控端无法获知本次触摸操作的触摸抬起事件已经生成,而会继续等待接收指令,假如用户长时间没有输入触摸操作,那么被控端将一直处于等待状态,导致控制异常。
为了解决如上由于数据包丢失而导致控制异常的问题,本实施例中,接收到该数据包之后,如果数据包包含的触摸事件不是触摸抬起事件,则会以该接收到数据包的时刻为监控起点,监测指定时长内是否接收到具有第一标识的数据包。
可选的,该步骤402也可以是在接收到该当前数据包的时刻启动一个定时器,并以该接收到该当前数据包的时刻作为计时起点,监测在该定时器的定时时长内是否接收到指定数据包。
403,当指定时长内未接收到该指定数据包时,则确定丢失目标数据包。
其中,该目标数据包包括触摸抬起事件,且该目标数据包与该当前触摸事件同属于一次触摸操作。
可选的,本实施例中该指定数据包同样可以包括触摸点的触摸位置坐标,则确定出的该目标数据包中也可以包括丢失的触摸抬起事件的触摸位置坐标。如,可以将该指定数据包中包含的触摸位置坐标作为该触摸抬起事件的触摸位置坐标。
404,构建该目标数据包对应的触摸抬起事件。
与前面实施例相似,构建的触摸抬起事件可以是包括表征触摸事件为触摸抬起事件的代码,还可以包括触摸抬起事件的触摸位置坐标。
405,执行构建出的该触摸抬起事件。
如,可以将构建出的触摸抬起事件传输到被控端的驱动层执行。
可以理解的是,当手指触摸控终端触摸屏的位置一直保持不变时,控制端也不会不产生触摸事件,这样,被控端也会长时间无法接收到控制端发送的触摸事件。因此,如果按照图4实施例的方式,被控端就可能会将触摸点保持不同的情况也认为是存在触摸抬起事件丢失,从而导致被控端无法区分出触摸点保持不动和触摸抬起事件丢失两种情况。
可选的,在控制端可以增加心跳发送机制,当控制端检测到触摸点超过特定时长未发送移动时,控制端为了将该种情况通知给被控端,控制端可以按照在该触摸点的位置维持不变的过程中,按照预设周期向被控端发送心跳消息。如,控制端每隔200ms发送一次心跳消息。
相应的,如果被控端在该指定时长内接收到心跳消息,则以接收到该心跳消息的时刻起,确定经该指定时长所应到达的目标时刻;将该目标时刻更新为该指定时长的终止时刻,并在更新后的指定时长内监控是否接收到该指定数据。
可选的,当图4实施例中采用定时器对指定时长进行计时的情况下,在定时器到达定时时长之前,如果接收到心跳消息,则可以更新定时器,设定定时器以接收到心跳消息的时刻为计时起点重新进行计时。
需要说明的是,在本申请以上实施例中,判断是否丢失该当前数据包关联的至少一个目标数据包的多种方式可以是独立执行,可选的,为了能够尽可能多的减少控制异常的情况,以上多种判断目标数据包的方式可以同时执行。
如,在接收到当前数据包之后,可以获取该当前数据包对应的历史数据包,在依据触摸事件序列,检测该当前数据包与历史数据包之间是否丢失目标数据包的同时,如果该当前数据包包括的当前触摸事件不是触摸抬起事件,还可以以接收到当前数据包的时刻为起始时刻进行监控,以监测接收到该当前数据包之后的指定时长内是否接收到指定数据包。
相应的,在图4实施例中,当指定时长内接收到该指定数据包时,则将该指定数据包作为当前数据包,将当前数据包作为历史数据包,并按照前面实施例所描述的方式,检测当前确定出的当前数据包与历史数据包之间是否丢失目标数据包。
下面对本发明实施例提供的数据处理装置进行介绍,下文描述的数据处理装置可与上文描述的数据处理方法相互对应参照。
参见图5,其示出了本申请一种数据处理装置一个实施例的结构示意图,本实施例的装置可以包括:
接收单元501,用于接收控制端发送的当前数据包,所述当前数据包包括:当前触摸事件以及所述当前触摸事件的第一标识,所述第一标识用于标识触摸屏上的触摸点;
判断单元502,用于判断是否丢失所述当前数据包关联的至少一个目标数据包,其中,所述目标数据包包括目标触摸事件和所述目标触摸事件的第一标识,且所述目标触摸事件的第一标识与所述当前触摸事件的第一标识相同;
事件构建单元503,用于当存在所述至少一个目标数据包丢失时,构建所述至少一个目标数据包对应的至少一个所述目标触摸事件;
事件处理单元504,用于处理所述至少一个所述目标触摸事件,以使得被控端能够响应所述当前触摸事件所属的触摸操作对应的触摸事件。
可选的,所述至少一个目标数据包对应的至少一个目标触摸事件与所述当前触摸事件之间具有指定的生成顺序;
则,所述事件处理单元,具体为,用于基于所述指定的生成顺序,处理所述至少一个目标触摸事件,以使得被控端处理所述至少一个目标触摸事件以及所述当前触摸事件的先后顺序与所述生成顺序相同。
可选的,在一种可能的实现方式中,判断单元可以包括:
历史获取单元,用于当接收到所述当前数据包时,获取最近一次接收到的历史数据包,所述历史数据包包括:历史触摸事件以及所述历史触摸事件的第一标识,其中,所述历史触摸事件的第一标识与所述当前触摸事件的第一标识相同;
事件检测单元,用于依据预设的触摸事件序列,检测所述历史触摸事件与所述当前触摸事件之间是否丢失至少一个目标触摸事件。
可选的,所述触摸事件序列依次包括触摸按压事件、触摸移动事件和触摸抬起事件;
所述事件检测单元,包括:
第一检测子单元,用于如果当前触摸事件是所述触摸按压事件,判断所述历史触摸事件是否为所述触摸抬起事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸抬起事件,且丢失的触摸抬起事件与历史触摸事件属于同一次触摸操作;
第二检测子单元,用于如果当前触摸事件不是所述触摸按压事件,判断所述历史触摸事件是否为所述触摸按压事件或触摸移动事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸按压事件,且丢失的触摸按压事件与所述当前触摸事件属于同一次触摸操作。
可选的,所述当前数据包还包括:第二标识,所述第二标识用于标识具有相同的所述第一标识的不同次触摸操作;
则所述事件检测单元,包括:
事件检测子单元,用于依据预设的触摸事件序列,以及所述历史触摸事件的第二标识和所述当前触摸事件的第二标识,检测所述历史触摸事件与所述当前触摸事件之间是否丢失至少一个目标触摸事件。
可选的,所述触摸事件序列依次包括触摸按压事件、触摸移动事件和触摸抬起事件;
所述事件检测子单元,包括:
第一检测子单元,用于如果当前触摸事件是所述触摸按压事件,判断所述历史触摸事件是否为所述触摸抬起事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸抬起事件,且丢失的触摸抬起事件与历史触摸事件属于同一次触摸操作;
第二检测子单元,用于如果当前触摸事件不是所述触摸按压事件,判断所述历史触摸事件是否为所述触摸按压事件或触摸移动事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸按压事件,且丢失的触摸按压事件与所述当前触摸事件属于同一次触摸操作。
第三检测子单元,用于如果当前触摸事件不是所述触摸按压事件,且所述历史触摸事件为所述触摸按压事件或触摸移动事件,则判断所述历史触摸事件的第二标识是否与所述当前触摸事件的第二标识相同,如果否,则确定所述历史触摸事件与所述当前触摸事件之前丢失所述触摸事件序列中的触摸抬起事件以及触摸按压事件,其中,所述触摸抬起事件与所述历史触摸事件同属于一次触摸操作,所述触摸按压事件与所述当前触摸事件同属于一次触摸操作。
可选的,所述当前数据包还包括:所述当前触摸事件的触摸位置坐标;
所述历史数据包还包括:所述历史触摸事件的触摸位置坐标;
所述事件构建单元,包括:
位置确定子单元,用于根据所述当前触摸事件的触摸坐标位置或所述历史触摸事件的触摸位置坐标,确定所述至少一个目标触摸事件的触摸位置坐标;
构建子单元,用于依据至少一个目标触摸事件的触摸位置坐标,构建至少一个包含有触摸位置坐标的目标触摸事件。
可选的,在另一种可能的实现方式中,判断单元可以包括:
监测单元,用于如果所述当前触摸事件不是触摸抬起事件,则从接收到所述当前数据包的时刻开始,监测指定时长内是否接收到指定数据包,所述指定数据包中的第一标识与所述当前数据包的第一标识相同;
丢失确定单元,用于当指定时长内未接收到所述指定数据包时,则确定丢失目标数据包,其中,所述目标数据包包括触摸抬起事件,且所述目标数据包与所述当前触摸事件同属于一次触摸操作。
可选的,该装置还可以包括:
心跳监测单元,用于如果所述指定时长内接收到心跳消息,则以接收到所述心跳消息的时刻起,确定经所述指定时长所应到达的目标时刻;
时长更新单元,用于将所述目标时刻更新为所述指定时长的终止时刻,并在更新后的指定时长内监控是否接收到所述指定数据包。
本发明实施例还提供一种智能设备,该只能设备可以包括上述所述的数据处理装置。
图6示出了智能设备的硬件结构框图,参照图6,智能设备可以包括:处理器1,通信接口2,存储器3和通信总线4;
其中处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信;
可选的,通信接口2可以为通信模块的接口,如GSM模块的接口;
处理器1,用于执行程序;
存储器3,用于存放程序;
程序可以包括程序代码,所述程序代码包括计算机操作指令。
处理器1可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
其中,程序可具体用于:
接收控制端发送的当前数据包,该当前数据包包括:当前触摸事件以及该当前触摸事件的第一标识,第一标识用于标识触摸屏上的触摸点;
判断是否丢失所述当前数据包关联的至少一个目标数据包,其中,目标数据包包括目标触摸事件和该目标触摸事件的第一标识,且目标触摸事件的第一标识与该当前触摸事件的第一标识相同;
当存在该至少一个目标数据包丢失时,构建至少一个目标数据包对应的至少一个目标触摸事件;
处理该至少一个所述目标触摸事件,以使得被控端能够响应该当前触摸事件所属的触摸操作对应的触摸事件。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (18)

1.一种数据处理方法,其特征在于,包括:
接收控制端发送的当前数据包,所述当前数据包包括:当前触摸事件以及所述当前触摸事件的第一标识,所述第一标识用于标识触摸屏上的触摸点;
判断是否丢失所述当前数据包关联的至少一个目标数据包,其中,所述目标数据包包括目标触摸事件和所述目标触摸事件的第一标识,且所述目标触摸事件的第一标识与所述当前触摸事件的第一标识相同;
当存在所述至少一个目标数据包丢失时,构建所述至少一个目标数据包对应的至少一个所述目标触摸事件;
处理所述至少一个所述目标触摸事件,以使得被控端能够响应所述当前触摸事件所属的触摸操作对应的触摸事件。
2.根据权利要求1所述的方法,其特征在于,所述至少一个目标数据包对应的至少一个目标触摸事件与所述当前触摸事件之间具有指定的生成顺序;
则,所述处理所述至少一个目标触摸事件,包括:
基于所述指定的生成顺序,处理所述至少一个目标触摸事件,以使得被控端处理所述至少一个目标触摸事件以及所述当前触摸事件的先后顺序与所述生成顺序相同。
3.根据权利要求1所述的方法,其特征在于,所述判断是否丢失所述当前数据包关联的至少一个目标数据包,包括:
当接收到所述当前数据包时,获取最近一次接收到的历史数据包,所述历史数据包包括:历史触摸事件以及所述历史触摸事件的第一标识,其中,所述历史触摸事件的第一标识与所述当前触摸事件的第一标识相同;
依据预设的触摸事件序列,检测所述历史触摸事件与所述当前触摸事件之间是否丢失至少一个目标触摸事件。
4.根据权利要求3所述的方法,其特征在于,所述触摸事件序列依次包括触摸按压事件、触摸移动事件和触摸抬起事件;
所述依据预设的触摸事件序列,检测所述历史触摸事件与所述当前触摸事件之间是否丢失至少一个目标触摸事件,包括:
如果当前触摸事件是所述触摸按压事件,判断所述历史触摸事件是否为所述触摸抬起事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸抬起事件,且丢失的触摸抬起事件与历史触摸事件属于同一次触摸操作;
如果当前触摸事件不是所述触摸按压事件,判断所述历史触摸事件是否为所述触摸按压事件或触摸移动事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸按压事件,且丢失的触摸按压事件与所述当前触摸事件属于同一次触摸操作。
5.根据权利要求3所述的方法,其特征在于,所述当前数据包还包括:第二标识,所述第二标识用于标识具有相同的所述第一标识的不同次触摸操作;
则所述依据预设的触摸事件序列,检测所述历史触摸事件与所述当前触摸事件之间是否丢失至少一个目标触摸事件,包括:
依据预设的触摸事件序列,以及所述历史触摸事件的第二标识和所述当前触摸事件的第二标识,检测所述历史触摸事件与所述当前触摸事件之间是否丢失至少一个目标触摸事件。
6.根据权利要求5所述的方法,其特征在于,所述触摸事件序列依次包括触摸按压事件、触摸移动事件和触摸抬起事件;
所述依据预设的触摸事件序列,以及所述历史触摸事件的第二标识和所述当前触摸事件的第二标识,检测所述历史触摸事件与所述当前触摸事件之间是否丢失至少一个目标触摸事件,包括:
如果当前触摸事件是所述触摸按压事件,判断所述历史触摸事件是否为所述触摸抬起事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸抬起事件,且丢失的触摸抬起事件与历史触摸事件属于同一次触摸操作;
如果当前触摸事件不是所述触摸按压事件,判断所述历史触摸事件是否为所述触摸按压事件或触摸移动事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸按压事件,且丢失的触摸按压事件与所述当前触摸事件属于同一次触摸操作;
如果当前触摸事件不是所述触摸按压事件,且所述历史触摸事件为所述触摸按压事件或触摸移动事件,则判断所述历史触摸事件的第二标识是否与所述当前触摸事件的第二标识相同,如果否,则确定所述历史触摸事件与所述当前触摸事件之前丢失所述触摸事件序列中的触摸抬起事件以及触摸按压事件,其中,所述触摸抬起事件与所述历史触摸事件同属于一次触摸操作,所述触摸按压事件与所述当前触摸事件同属于一次触摸操作。
7.根据权利要求3-6任一项所述的方法,其特征在于,所述当前数据包还包括:所述当前触摸事件的触摸位置坐标;
所述历史数据包还包括:所述历史触摸事件的触摸位置坐标;
所述构建所述至少一个目标数据包对应的至少一个所述目标触摸事件,包括:
根据所述当前触摸事件的触摸坐标位置或所述历史触摸事件的触摸位置坐标,确定所述至少一个目标触摸事件的触摸位置坐标;
依据至少一个目标触摸事件的触摸位置坐标,构建至少一个包含有触摸位置坐标的目标触摸事件。
8.根据权利要求1或3所述的方法,其特征在于,所述判断是否丢失所述当前数据包关联的至少一个目标数据包,包括:
如果所述当前触摸事件不是触摸抬起事件,则从接收到所述当前数据包的时刻开始,监测指定时长内是否接收到指定数据包,所述指定数据包中的第一标识与所述当前数据包的第一标识相同;
当指定时长内未接收到所述指定数据包时,则确定丢失目标数据包,其中,所述目标数据包包括触摸抬起事件,且所述目标数据包与所述当前触摸事件同属于一次触摸操作。
9.根据权利要求8所述的方法,其特征在于,还包括:
如果所述指定时长内接收到心跳消息,则以接收到所述心跳消息的时刻起,确定经所述指定时长所应到达的目标时刻;
将所述目标时刻更新为所述指定时长的终止时刻,并在更新后的指定时长内监控是否接收到所述指定数据包。
10.一种数据处理装置,其特征在于,包括:
接收单元,用于接收控制端发送的当前数据包,所述当前数据包包括:当前触摸事件以及所述当前触摸事件的第一标识,所述第一标识用于标识触摸屏上的触摸点;
判断单元,用于判断是否丢失所述当前数据包关联的至少一个目标数据包,其中,所述目标数据包包括目标触摸事件和所述目标触摸事件的第一标识,且所述目标触摸事件的第一标识与所述当前触摸事件的第一标识相同;
事件构建单元,用于当存在所述至少一个目标数据包丢失时,构建所述至少一个目标数据包对应的至少一个所述目标触摸事件;
事件处理单元,用于处理所述至少一个所述目标触摸事件,以使得被控端能够响应所述当前触摸事件所属的触摸操作对应的触摸事件。
11.根据权利要求10所述的装置,其特征在于,所述至少一个目标数据包对应的至少一个目标触摸事件与所述当前触摸事件之间具有指定的生成顺序;
则,所述事件处理单元,具体为,用于基于所述指定的生成顺序,处理所述至少一个目标触摸事件,以使得被控端处理所述至少一个目标触摸事件以及所述当前触摸事件的先后顺序与所述生成顺序相同。
12.根据权利要求10所述的装置,其特征在于,所述判断单元,包括:
历史获取单元,用于当接收到所述当前数据包时,获取最近一次接收到的历史数据包,所述历史数据包包括:历史触摸事件以及所述历史触摸事件的第一标识,其中,所述历史触摸事件的第一标识与所述当前触摸事件的第一标识相同;
事件检测单元,用于依据预设的触摸事件序列,检测所述历史触摸事件与所述当前触摸事件之间是否丢失至少一个目标触摸事件。
13.根据权利要求12所述的装置,其特征在于,所述触摸事件序列依次包括触摸按压事件、触摸移动事件和触摸抬起事件;
所述事件检测单元,包括:
第一检测子单元,用于如果当前触摸事件是所述触摸按压事件,判断所述历史触摸事件是否为所述触摸抬起事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸抬起事件,且丢失的触摸抬起事件与历史触摸事件属于同一次触摸操作;
第二检测子单元,用于如果当前触摸事件不是所述触摸按压事件,判断所述历史触摸事件是否为所述触摸按压事件或触摸移动事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸按压事件,且丢失的触摸按压事件与所述当前触摸事件属于同一次触摸操作。
14.根据权利要求12所述的装置,其特征在于,所述当前数据包还包括:第二标识,所述第二标识用于标识具有相同的所述第一标识的不同次触摸操作;
则所述事件检测单元,包括:
事件检测子单元,用于依据预设的触摸事件序列,以及所述历史触摸事件的第二标识和所述当前触摸事件的第二标识,检测所述历史触摸事件与所述当前触摸事件之间是否丢失至少一个目标触摸事件。
15.根据权利要求14所述的装置,其特征在于,所述触摸事件序列依次包括触摸按压事件、触摸移动事件和触摸抬起事件;
所述事件检测子单元,包括:
第一检测子单元,用于如果当前触摸事件是所述触摸按压事件,判断所述历史触摸事件是否为所述触摸抬起事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸抬起事件,且丢失的触摸抬起事件与历史触摸事件属于同一次触摸操作;
第二检测子单元,用于如果当前触摸事件不是所述触摸按压事件,判断所述历史触摸事件是否为所述触摸按压事件或触摸移动事件,如果否,则确定所述历史触摸事件与所述当前触摸事件之间丢失所述触摸事件序列中的触摸按压事件,且丢失的触摸按压事件与所述当前触摸事件属于同一次触摸操作;
第三检测子单元,用于如果当前触摸事件不是所述触摸按压事件,且所述历史触摸事件为所述触摸按压事件或触摸移动事件,则判断所述历史触摸事件的第二标识是否与所述当前触摸事件的第二标识相同,如果否,则确定所述历史触摸事件与所述当前触摸事件之前丢失所述触摸事件序列中的触摸抬起事件以及触摸按压事件,其中,所述触摸抬起事件与所述历史触摸事件同属于一次触摸操作,所述触摸按压事件与所述当前触摸事件同属于一次触摸操作。
16.根据权利要求12-15任一项所述的装置,其特征在于,所述当前数据包还包括:所述当前触摸事件的触摸位置坐标;
所述历史数据包还包括:所述历史触摸事件的触摸位置坐标;
所述事件构建单元,包括:
位置确定子单元,用于根据所述当前触摸事件的触摸坐标位置或所述历史触摸事件的触摸位置坐标,确定所述至少一个目标触摸事件的触摸位置坐标;
构建子单元,用于依据至少一个目标触摸事件的触摸位置坐标,构建至少一个包含有触摸位置坐标的目标触摸事件。
17.根据权利要求10或12所述的装置,其特征在于,所述判断单元,包括:
监测单元,用于如果所述当前触摸事件不是触摸抬起事件,则从接收到所述当前数据包的时刻开始,监测指定时长内是否接收到指定数据包,所述指定数据包中的第一标识与所述当前数据包的第一标识相同;
丢失确定单元,用于当指定时长内未接收到所述指定数据包时,则确定丢失目标数据包,其中,所述目标数据包包括触摸抬起事件,且所述目标数据包与所述当前触摸事件同属于一次触摸操作。
18.根据权利要求17所述的装置,其特征在于,还包括:
心跳监测单元,用于如果所述指定时长内接收到心跳消息,则以接收到所述心跳消息的时刻起,确定经所述指定时长所应到达的目标时刻;
时长更新单元,用于将所述目标时刻更新为所述指定时长的终止时刻,并在更新后的指定时长内监控是否接收到所述指定数据包。
CN201610119359.XA 2016-03-02 2016-03-02 一种数据处理方法和装置 Active CN105607859B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201610119359.XA CN105607859B (zh) 2016-03-02 2016-03-02 一种数据处理方法和装置
PCT/CN2017/075436 WO2017148412A1 (zh) 2016-03-02 2017-03-02 一种数据处理方法和装置
JP2018544546A JP6682645B2 (ja) 2016-03-02 2017-03-02 データ処理方法及びデータ処理装置
KR1020187027414A KR102155229B1 (ko) 2016-03-02 2017-03-02 데이터 처리 방법 및 장치
EP17759263.1A EP3425491B1 (en) 2016-03-02 2017-03-02 Data processing method and apparatus
US16/046,725 US10558351B2 (en) 2016-03-02 2018-07-26 Data processing method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610119359.XA CN105607859B (zh) 2016-03-02 2016-03-02 一种数据处理方法和装置

Publications (2)

Publication Number Publication Date
CN105607859A CN105607859A (zh) 2016-05-25
CN105607859B true CN105607859B (zh) 2018-12-11

Family

ID=55987827

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610119359.XA Active CN105607859B (zh) 2016-03-02 2016-03-02 一种数据处理方法和装置

Country Status (6)

Country Link
US (1) US10558351B2 (zh)
EP (1) EP3425491B1 (zh)
JP (1) JP6682645B2 (zh)
KR (1) KR102155229B1 (zh)
CN (1) CN105607859B (zh)
WO (1) WO2017148412A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105607859B (zh) 2016-03-02 2018-12-11 腾讯科技(深圳)有限公司 一种数据处理方法和装置
US11366586B2 (en) * 2016-11-18 2022-06-21 Google Llc Streaming application environment with recovery of lost or delayed input events
US10623460B2 (en) 2016-11-18 2020-04-14 Google Llc Streaming application environment with remote device input synchronization
US11573657B2 (en) 2018-04-09 2023-02-07 Guangzhou Shiyuan Electronics Co., Ltd. Interactive white board and data processing method and device for same
CN108845613B (zh) * 2018-04-09 2021-07-09 广州视源电子科技股份有限公司 交互智能平板及其数据处理方和装置
CN109947287A (zh) * 2019-02-20 2019-06-28 广州华欣电子科技有限公司 一种触摸数据缺失的处理方法、装置、设备及存储介质
CN111273809B (zh) * 2020-01-09 2022-05-17 Oppo(重庆)智能科技有限公司 数据获取方法、装置、电子设备及存储介质
CN111966736B (zh) * 2020-07-27 2022-12-09 苏州浪潮智能科技有限公司 一种高吞吐低延时大容量Flume通道及其传输方法
CN114903430A (zh) * 2021-02-10 2022-08-16 海信视像科技股份有限公司 控制设备、显示设备、服务器以及健康检测方法
US11960668B1 (en) 2022-11-10 2024-04-16 Honeywell International Inc. Cursor management methods and systems for recovery from incomplete interactions
US11954325B1 (en) 2023-04-05 2024-04-09 Honeywell International Inc. Methods and systems for assigning text entry components to cursors

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102169378A (zh) * 2010-02-26 2011-08-31 深圳华映显示科技有限公司 触控面板及其多点触碰侦测方法以及触控显示装置
CN103477617A (zh) * 2010-10-29 2013-12-25 联发科技(新加坡)私人有限公司 通信设备的控制方法
CN103513810A (zh) * 2012-06-29 2014-01-15 深圳市快播科技有限公司 一种用移动终端模拟鼠标控制适配器的方法及系统
CN104978136A (zh) * 2014-04-03 2015-10-14 Lg电子株式会社 移动终端和用于移动终端的控制方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3777683B2 (ja) * 1996-11-27 2006-05-24 株式会社明電舎 ディジタルリレーにおけるタッチパネルインターフェース。
JP3404474B2 (ja) * 2000-12-25 2003-05-06 同和鉱業株式会社 光学的検出装置
EP2622819B1 (en) * 2010-09-29 2017-03-08 Telefonaktiebolaget LM Ericsson (publ) Determining loss of ip packets
US8658917B2 (en) * 2011-02-04 2014-02-25 Perceptive Pixel Inc. Techniques for disambiguating touch data using user devices
US20120235924A1 (en) * 2011-03-16 2012-09-20 Hochmuth Roland M Display systems, methods, and apparatus
CN103176633B (zh) * 2011-12-21 2015-09-16 珠海全志科技股份有限公司 一种触摸屏防误操作方法、装置和系统
JP5950597B2 (ja) * 2012-02-03 2016-07-13 キヤノン株式会社 情報処理装置およびその制御方法
US20130265276A1 (en) * 2012-04-09 2013-10-10 Amazon Technologies, Inc. Multiple touch sensing modes
JP5331935B1 (ja) * 2012-12-22 2013-10-30 淳也 榎本 無線による画面表示制御方法及びシステム
JP6034709B2 (ja) * 2013-01-30 2016-11-30 シャープ株式会社 端末装置、外部表示装置及び端末装置と外部表示装置とからなる情報システム
JP6253284B2 (ja) * 2013-07-09 2017-12-27 キヤノン株式会社 情報処理装置およびその制御方法、プログラム、記録媒体
CN103501259B (zh) * 2013-10-21 2016-08-31 腾讯科技(深圳)有限公司 一种丢包检测的方法及检测装置
CN105607859B (zh) * 2016-03-02 2018-12-11 腾讯科技(深圳)有限公司 一种数据处理方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102169378A (zh) * 2010-02-26 2011-08-31 深圳华映显示科技有限公司 触控面板及其多点触碰侦测方法以及触控显示装置
CN103477617A (zh) * 2010-10-29 2013-12-25 联发科技(新加坡)私人有限公司 通信设备的控制方法
CN103513810A (zh) * 2012-06-29 2014-01-15 深圳市快播科技有限公司 一种用移动终端模拟鼠标控制适配器的方法及系统
CN104978136A (zh) * 2014-04-03 2015-10-14 Lg电子株式会社 移动终端和用于移动终端的控制方法

Also Published As

Publication number Publication date
EP3425491A1 (en) 2019-01-09
EP3425491A4 (en) 2019-12-18
US20180329600A1 (en) 2018-11-15
CN105607859A (zh) 2016-05-25
KR20180112058A (ko) 2018-10-11
EP3425491B1 (en) 2020-12-09
US10558351B2 (en) 2020-02-11
JP2019511774A (ja) 2019-04-25
JP6682645B2 (ja) 2020-04-15
WO2017148412A1 (zh) 2017-09-08
KR102155229B1 (ko) 2020-09-11

Similar Documents

Publication Publication Date Title
CN105607859B (zh) 一种数据处理方法和装置
US10037093B2 (en) Communication method, communication system, sensor controller, and stylus
CN104991721B (zh) 一种指纹操作方法和装置
CN107209584A (zh) 对触控笔的触摸按下检测
CN107122119A (zh) 信息处理方法、装置、电子设备及计算机可读存储介质
CN105371850B (zh) 一种路线导航方法及移动终端
CN104639758B (zh) 应用于智能终端的闹钟控制方法和闹钟控制装置
CN103272382A (zh) 蓝牙游戏手柄模拟智能终端触摸屏控制游戏的方法及装置
CN105094506B (zh) 智能终端的解锁屏幕的方法、智能终端及操作平台
CN107831996A (zh) 人脸识别启动方法及相关产品
CN102799348A (zh) 使用触摸屏的终端上的图标编辑方法和装置
WO2017032009A1 (zh) 一种解锁方法及移动终端
CN104202637A (zh) 按键遥控器、目标拖动方法
CN104135776A (zh) 一种跨终端建立连接的方法、装置及终端设备
CN107463319A (zh) 信息处理方法及装置、存储介质、电子设备
CN105183191B (zh) 一种触控笔及触控电子设备及控制方法
CN105446597A (zh) 应用程序的功能介绍信息的展示方法、展示装置和终端
CN105159555B (zh) 一种用户设备控制方法及用户设备
CN103853473B (zh) 信息传输方法、装置及电子设备
JP2019013297A (ja) ゲームプログラム、記録媒体、方法および情報処理装置
CN103809846A (zh) 一种功能调用方法及电子设备
CN112769780B (zh) 设备信息获取方法、装置、电子设备及存储介质
CN105988916A (zh) 对触摸屏设备的触摸点轨迹进行可视化的方法、装置与系统
WO2014169615A1 (zh) 防止触摸屏误触发的方法及系统
CN110188532A (zh) 一种密码保护方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant