如果 linux 内核里面驱动写好了makefile 编译成Zimage 这边的android 硬件抽象成模块也写好,那么我们就需要在应用程序框架层中实现一个硬件访问服务 因为 前面的都是C++开发 所以java调用就要用JNI 调用 android里面的机制是建立一个service 在service 里面实现设备初始化 设备的 读写的操作然后再提供给应用程序 , CSDN上的 老罗的android 日记 分析的不错, 因为这个直接调用HAL层比较负载 所以你最好去看看, 还有一种方法 绕过android 直接调用底层驱动 就是linux内核里面 你编译好驱动 写好接口 然后 自己写so库 ndk 编译 然后你应用程序直接调用 so库里面 基本的就是 一些 对于 open read write 等等 一些设备读写文件的封装 !