前往顾页
以后地位: 主页 > 收集编程 > Android教程 >

Android多点触摸和谈改进

时候:2014-02-10 12:56来源:知行网www.zhixing123.cn 编辑:麦田守望者

以两点为例,Linux多点触摸和谈上报依次为

ABS_MT_TOUCH_MAJOR ABS_MT_WIDTH_MAJOR ABS_MT_POSITION_X ABS_MT_POSITION_Y SYN_MT_REPORT //手指1 ABS_MT_TOUCH_MAJOR ABS_MT_WIDTH_MAJOR ABS_MT_POSITION_X ABS_MT_POSITION_Y SYN_MT_REPORT //手指2 SYN_REPORT
即采样一次需上报11个事件,操纵率太低,很容易呈现丢包的征象。是以我们决定encode data.格局见下表。

Bit 31 30~27 26~20 19~10 9~0
Data Reserved Size Press Y X

可以看出这类编码格局可以支撑辩白率1024×1024以下的LCD。完整满足以后及将来很长一段时候内项目标需求。我们将这类上报格局定名为ABS_BYD_MT_DATA,既然是打包上传,SYN_MT_REPORT也能够省略了。点窜后的上报依次为

ABS_BYD_MT_DATA //手指1 ABS_BYD_MT_DATA //手指2 SYN_REPORT

为了便于支撑2个手指以上的触摸项目,这里我们保存SYN_REPORT。如果点窜下android,便可以支撑256个手指。扩展起来非常便利

ABS_BYD_MT_DATA //手指1 ABS_BYD_MT_DATA //手指2 … ABS_BYD_MT_DATA //手指256 SYN_REPORT

当然如许点窜,android生怕是无法辨认的,点窜下层就好了。在EventHub.cpp中定义下 device class,然后在KeyInputQueue.java辨认出class,将包剖析出来。万事年夜吉。

------分开线----------------------------
标签(Tag):Android android教程 android技能 android软件 android开辟教程
------分开线----------------------------
保举内容
猜你感兴趣