Chinaunix首页 | 论坛 | 博客
  • 博客访问: 141770
  • 博文数量: 60
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 0
  • 用 户 组: 普通用户
  • 注册时间: 2016-07-05 15:39
文章存档

2016年(6)

2015年(36)

2014年(13)

2013年(5)

我的朋友

分类: Android平台

2014-01-03 14:39:43

在android2.3上调试TP时,只需要把linux驱动调通,android就可以正常使用了,而到android4.0上又有些不同了,针对linux驱动,需添加如下内容:
1、在手指按下时需调用如下函数上报Key Down:
       input_report_key(struct input_dev *input, BTN_TOUCH, 1);
    2、在手指释放时需调用如下函数上报Key Up:
       input_report_key(struct input_dev *input, BTN_TOUCH, 0);
    这样通过的话,可以在android4.0上看到有鼠标指针(圆圈)可以移动,把触摸屏做成了笔记本电脑上的鼠标触摸屏了,后来再查了下,原来需要添加一个idc文件,具体识别优先级参考:http://source.android.com/tech/input/input-device-configuration-files.html这篇文档,会按下面的顺序识别配置文件:
  • /system/usr/idc/Vendor_XXXX_Product_XXXX_Version_XXXX.idc
  • /system/usr/idc/Vendor_XXXX_Product_XXXX.idc
  • /system/usr/idc/DEVICE_NAME.idc
  • /data/system/devices/idc/Vendor_XXXX_Product_XXXX_Version_XXXX.idc
  • /data/system/devices/idc/Vendor_XXXX_Product_XXXX.idc
  • /data/system/devices/idc/DEVICE_NAME.idc
   为了方便,我直接创建一个“设备名.idc”的文件,直接放到/system/usr/idc/目录下,相应的内容参考如下:
   # Basic Parameters
   touch.deviceType = touchScreen
   touch.orientationAware = 1

   # Size
   touch.size.calibration = diameter
   touch.size.scale = 10
   touch.size.bias = 0
   touch.size.isSummed = 0

   # Pressure
   # Driver reports signal strength as pressure.
   #
   # A normal thumb touch typically registers about 200 signal strength
   # units although we don't expect these values to be accurate.
   touch.pressure.calibration = amplitude
   touch.pressure.scale = 0.005

   # Orientation
   touch.orientation.calibration = none
   这样配置好后,在android4.0上的TP就可以正常使用了,而不会成为滑鼠触屏了。


阅读(724) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~