现在官网上的源码是2.1版本的吧,2.0就支持多点触控了,请教下,谁能教我怎么看多点触摸的代码啊,我想了解下从驱动开始到应用的一个实现流程

解决方案 »

  1.   

    pro android 2 16章 有multi touch的例子 
    不过模拟器里面好像没办法进行测试。
      

  2.   

    从平台到应用要学的多了!内核就是Linux,驱动/移植就要学C,虚拟机一部份是用C++搭建的, 应用就是用jave写的!  呵呵
      

  3.   

    现在用eclipse可以直接用usb线连接手机进行开发,很方便的,多点你直接在手机上操作就好了,所有的调试信息也可以在logcat里打出来
      

  4.   

    MotionEvent可以实现支持多点触摸功能
    建议2.1 SDK 进行开发
      

  5.   


    如果真的打算走android开发这条路,一台真机还是必须的,毕竟模拟器测试的感觉和真机还是有差别的,现在android的手机品牌也多,也越来越便宜了。
      

  6.   

    android有模拟键盘输入的程序,不知道有没有模拟触摸屏输入的。
      

  7.   

    这贴还没结贴啊。。哈哈。。
    驱动我不知道,我想贴一下代码,但是受限,只能提一下了。。
    int pointerCount = mMotionEvent.getPointerCount(); //获得多少点
     switch (action) {
            case MotionEvent.ACTION_DOWN: //判断是什么事件
    mStartX1 = mMotionEvent.getX(0);
    mStartX2 = mMotionEvent.getX(1); //获得不同点的位置
    你还可能用到:motionEvent.recycle();
      

  8.   

    从driver看把,input系统架构,看上去
      

  9.   

    我做的android下多点touch的实现,大致是这样的。
    touch的控制器在i2c上挂着,驱动就是再把i2c上的touch控制器送上来的数据翻译成linux input子系统的格式上报。注意中断处理中的防抖动和同步问题,现在流行用i2c,所以i2c上会有不只一个设备,必要时还需要考虑i2c的冲突,因为touch上报的数据实在是太多了,低调点,让下路也挺好。
    touch控制器报上来的信息包括,坐标,压力,点id(因为是多点触控,这是识别多点的唯一途径)等等
    android的jni层有一个线程在不断地获取input子系统上报的信息,看到poll你就会理解。再翻译再上报,这次要翻译成java所理解的格式,内容不变。把这些翻译好的数据放入event队列中,以便需要的人来取。
    至于android上层是怎么使用event事件的,这个lz尽管去google吧,有很多很详细的资料。