多屏 Touch 方案
多屏 Touch 需解决两个问题:Touch 事件上报、控件正确接收 Touch 事件。
Android O Car 版本主副屏是 mirror 的,主屏和副屏同时响应按键(不同 Android O 版本
可能有差异)。
修改 1,Touch 区分主副屏:
开机后断开 mirror, 此时副屏 Touch 无效,只响应主屏 Touch。
区分主副屏:
控制主副屏显示接口:void setLaunchDisplayId (int displayId);
修改 2,副屏 Touch 事件上报:
首先确定副屏 Touch 的 event 文件,存在于目录”/dev/input”,这些文件对应的设备
信息可以在/proc/bus/input/devices/“查看.
Touch 事件上报:
…/services/inputflinger/EventHub.cpp b/services/inputflinger/EventHub.cpp
其中 getDefaultInputNode 获取副屏 event 文件,实现具体参见 Enable multi display
touch.diff。
以上修改解决了副屏 Touch 问题。