一种数据处理方法和装置的制造方法_3

文档序号:9843880阅读:来源:国知局
M0VE(x ',y ')所属的一次触摸操作的触摸按压事件DOWN被丢失,相 应的,②表征历史触摸事件M0VE( X,y)所属的另一次触摸操作的触摸抬起操作UP被丢失。
[0081] 因此,为了区分出历史触摸事件与当前触摸事件是否属于不同次触摸操作,可以 在控制端为不同的触摸点分配不同的第一标识的同时,为具有第一标识的触摸点的不同次 触摸操作分配一个第二标识。该第二标识用于标识具有相同的第一标识的不同次触摸操 作。
[0082] 相应的,被控端接收到的该当前数据包还包括:当前触摸事件的第二标识;而该历 史数据包也可以包括历史触摸事件的第二标识。则,检测是否存在丢失的至少一个目标触 摸事件,可以为:
[0083]依据预设的触摸事件序列,以及历史触摸事件的第二标识和当前触摸事件的第二 标识,检测该历史触摸事件与所述当前触摸事件之间是否丢失至少一个目标触摸事件。
[0084]其中,根据该第二标识,可以确定历史触摸事件与该当前触摸事件是否为同一次 触摸操作。这样,根据该触摸事件序列的循环次序,以及该历史触摸事件以及当前触摸事件 是否为同一次触摸操作,便可以确定历史触摸事件以及该当前触摸事件之间是否存在触摸 事件丢失以及丢失的目标触摸事件。
[0085] 可选的,一种检测方式可以为:
[0086] 如果当前触摸事件是该触摸按压事件,判断该历史触摸事件是否为该触摸抬起事 件,如果否,则确定该历史触摸事件与当前触摸事件之间丢失该触摸事件序列中的触摸抬 起事件,且丢失的触摸抬起事件与历史触摸事件属于同一次触摸操作;
[0087] 如果当前触摸事件不是该触摸按压事件,判断该历史触摸事件是否为该触摸按压 事件或触摸移动事件,如果否,则确定该历史触摸事件与该当前触摸事件之间丢失该触摸 事件序列中的触摸按压事件,且丢失的触摸按压事件与该当前触摸事件属于同一次触摸操 作。
[0088] 如果当前触摸事件不是所述触摸按压事件,且该历史触摸事件为该触摸按压事件 或触摸移动事件,则判断该历史触摸事件的第二标识是否与该当前触摸事件的第二标识相 同,如果否,则确定该历史触摸事件与该当前触摸事件之前丢失该触摸事件序列中的触摸 抬起事件以及触摸按压事件。其中,该触摸抬起事件与该历史触摸事件同属于一次触摸操 作,该触摸按压事件与该当前触摸事件同属于一次触摸操作。
[0089] 当然,在实际应用中,也可以如表1的方式预先建立历史触摸事件、当前触摸事件 以及目标触摸事件的对应关系,然后通过查询表格,确定丢失的至少一次目标触摸事件。
[0090] 为了便于理解,以图3丢失的情况为例,对依据预先构建出的历史触摸事件、当前 触摸事件以及目标触摸事件的对应关系,确定目标触摸事件的情况进行简单介绍。
[0091] 对于当前触摸事件与历史触摸事件属于不同次触摸操作的情况下,构建出的对应 关系可以参见如下表2。 「00921 Luuvjj 衣 z
[0094]需要说明的是,表2中丢失事件这一列是针对图3的情况而添加,仅仅是为了针对 图3的情况对该表2中的对应关系进行验证。但是可以理解的是,表2中的对应关系同样适用 于其他情况。同样适用于其他情况。
[0095] 如表2可知,当丢失图3中③和④表示的触摸事件时,被控端当前接收到的当前触 摸事件为M0VE(x,y),而历史触摸事件为MOVE( X',y'),且这两次触摸事件不属于同一次触 摸操作,则查询表2可知,丢失的触摸事件为位置点(X',y')处的触摸抬起事件up(x',y'), 以及位置点(x,y)处的触摸按压事件down (x,y)。
[0096] 可选的,与图2实施例相似,在本实施例中,当前数据包还包括:当前触摸事件的触 摸位置坐标;相应的,历史数据包还包括:所述历史触摸事件的触摸位置坐标;则,构建目标 触摸事件时,同样可以根据该当前触摸事件的触摸坐标位置或该历史触摸事件的触摸位置 坐标,确定该至少一个目标触摸事件的触摸位置坐标。依据至少一个目标触摸事件的触摸 位置坐标,构建至少一个包含有触摸位置坐标的目标触摸事件。
[0097]参见图4,其示出了本申请一种数据处理方法另一个实施例的流程示意图,本实施 例的方法可以包括:
[0098] 401,接收控制端发送的当前数据包。
[0099]其中,该当前数据包包括:当前触摸事件以及该当前触摸事件的第一标识。其中, 第一标识用于标识触摸屏上的触摸点。
[0100] 402,如果该当前触摸事件不是触摸抬起事件,则从接收到该当前数据包的时刻开 始,监测指定时长内是否接收到指定数据包。
[0101] 其中,该指定数据包中的第一标识与该当前数据包的第一标识相同。
[0102] 可以理解的是,如果当前触摸事件不是触摸抬起事件,则说明一次触摸操作仍没 有结束,在该种情况下,如果长时间没有接收到同一个第一标识所标识的触摸事件,则说明 该次触摸操作的触摸抬起事件的数据包已经丢失。
[0103] 如,用户在控制端的触摸屏上进行触摸按压操作时,被控端当前接收到的当前数 据包包含有触摸按压事件,而在当前时刻之后,用户在触摸屏上的触点抬起,但是控制端向 被控端发送的包含有触摸抬起事件的数据包丢失,那么被控端无法获知本次触摸操作的触 摸抬起事件已经生成,而会继续等待接收指令,假如用户长时间没有输入触摸操作,那么被 控端将一直处于等待状态,导致控制异常。
[0104] 为了解决如上由于数据包丢失而导致控制异常的问题,本实施例中,接收到该数 据包之后,如果数据包包含的触摸事件不是触摸抬起事件,则会以该接收到数据包的时刻 为监控起点,监测指定时长内是否接收到具有第一标识的数据包。
[0105] 可选的,该步骤402也可以是在接收到该当前数据包的时刻启动一个定时器,并以 该接收到该当前数据包的时刻作为计时起点,监测在该定时器的定时时长内是否接收到指 定数据包。
[0106] 403,当指定时长内未接收到该指定数据包时,则确定丢失目标数据包。
[0107] 其中,该目标数据包包括触摸抬起事件,且该目标数据包与该当前触摸事件同属 于一次触摸操作。
[0108] 可选的,本实施例中该指定数据包同样可以包括触摸点的触摸位置坐标,则确定 出的该目标数据包中也可以包括丢失的触摸抬起事件的触摸位置坐标。如,可以将该指定 数据包中包含的触摸位置坐标作为该触摸抬起事件的触摸位置坐标。
[0109] 404,构建该目标数据包对应的触摸抬起事件。
[0110]与前面实施例相似,构建的触摸抬起事件可以是包括表征触摸事件为触摸抬起事 件的代码,还可以包括触摸抬起事件的触摸位置坐标。
[0111] 405,执行构建出的该触摸抬起事件。
[0112] 如,可以将构建出的触摸抬起事件传输到被控端的驱动层执行。
[0113] 可以理解的是,当手指触摸控终端触摸屏的位置一直保持不变时,控制端也不会 不产生触摸事件,这样,被控端也会长时间无法接收到控制端发送的触摸事件。因此,如果 按照图4实施例的方式,被控端就可能会将触摸点保持不同的情况也认为是存在触摸抬起 事件丢失,从而导致被控端无法区分出触摸点保持不动和触摸抬起事件丢失两种情况。
[0114] 可选的,在控制端可以增加心跳发送机制,当控制端检测到触摸点超过特定时长 未发送移动时,控制端为了将该种情况通知给被控端,控制端可以按照在该触摸点的位置 维持不变的过程中,按照预设周期向被控端发送心跳消息。如,控制端每隔200ms发送一次 心跳消息。
[0115] 相应的,如果被控端在该指定时长内接收到心跳消息,则以接收到该心跳消息的 时刻起,确定经该指定时长所应到达的目标时刻;将该目标时刻更新为该指定时长的终止 时刻,并在更新后的指定时长内监控是否接收到该指定数据。
[0116] 可选的,当图4实施例中采用定时器对指定时长进行计时的情况下,在定时器到达 定时时长之前,如果接收到心跳消息,则可以更新定时器,设定定时器以接收到心跳消息的 时刻为计时起点重新进行计时。
[0117]需要说明的是,在本申请以上实施例中,判断是否丢失该当前数据包关联的至少 一个目标数据包的多种方式可以是独立执行,可选的,为了能够尽可能多的减少控制异常 的情况,以上多种判断目标数据包的方式可以同时执行。
[0118] 如,在接收到当前数据包之后,可以获取该当前数据包对应的历史数据包,在依据 触摸事件序列,检测该当前数据包与历史数据包之间是否丢失目标数据包的同时,如果该 当前数据包包括的当前触摸事件不是触摸抬起事件,还可以以接收到当前数据包的时刻为 起始时刻进行监控,以监测接收到该当前数据包之后的指定时长内是否接收到指定数据 包。
[0119] 相应的,在图4实施例中,当指定时长内接收到该指定数据包时,则将该指定数据 包作为当前数据包,将当前数据包作为历史数据包,并按照前面实施例所描述的方式,检测 当前确定出的当前数据包与历史数据包之间是否丢失目标数据包。
[0120]下面对本发明实施例提供的数据处理装置进行介绍,下文描述的数据处理装置可 与上文描述的数据处理方法相互对应参照。
[0121] 参见图5,其示出了本申请一种数据处理装置一个实施例的结构示意图,本实施例 的装置可以包括:
[0122] 接收单元501,用于接收控制端发送的当前数据包,所述当前数据包包括:当前触 摸事件以及所述当前触摸事件的第一标识,所述第一标识用于标识触摸屏上的触摸点;
[0123] 判断单元502,用于判断是否丢失所述当前数据包关联的至少一个目标数据包,其 中,所述目标数据包包括目标触摸事件和所述目标触摸事件的第一标识,且所述目标触摸 事件的第一标识与所述当前触摸事件的第一标识相同;
[0124] 事件构建单元503,用于当存在所述至少一个目标数据包丢失时,构建所述至少一 个目标数据包对应的至少一个所述目标触摸事件;
[0125] 事件处理单元504,用于处理所述至少一个所述目标触摸事件,以使得被控端能够 响应所述当前触摸事件所属的触摸操作对应的触摸事件。
[0126] 可选的,所述至少一个目标数据包对
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1