android 系统源码中(或Android应用程序中)如何调用以下C语言代码?
触摸屏驱动中的C代码:
        int key_val;
        ...
key_val = 172;
input_report_key(data->input_dev, key_val, 1);
input_sync(data->input_dev);  
        ...  

解决方案 »

  1.   

    ndk可以运行c代码。网上搜索至少有几百个很详细的例子。
      

  2.   

    如果是驱动里的代码,转的还要更多App (Java) -> Framework(Java) ---> libs -> HAL -> fs上的设备节点
                                  JNI                  |
                                                       | (System call)
                                                       |
                                                     Linux Driver
      

  3.   


    原来空格是忽略的啊,重排版一下App (Java) -> Framework(Java) --(JNI)--> libs -> HAL --> fs上的设备节点 --(sys calls)-> Linux driver
                                                       
      

  4.   

    android 系统中, 不能以文件的形式打开驱动, 之后再进行 IOCTL 操作吗?
      

  5.   

    HAL --> fs上的设备节点 --(sys calls)-> Linux driver设备节点就是文件
      

  6.   

    activity -> onTouch() -> viewManager -> windowManagerService -> inputManager -> JNI -> native inputManager -> inputDispatcher -> inputReader -> eventHub -> linux input system -> vfs -> char fs-> your driver......