第四步,用aidl增加java services。
Aidl是一个工具,他可以用来增加java的services,首先,在frameworks/base/core/java/android/os/路径下增加IDeviceService.aidl接口,然后,在 frameworks/base/Android.mk里面增加这个aidl文件,编译一下,这个时候就会生成stub,新增frameworks/base/services/java/com/android/server这个路径下的DeviceService.java,这个java文件里需要继承刚才用aidl工具生成出来的IDeviceService.Stub,之后对jni接口进行再一次封装。在frameworks/base/services/java/com/android/servier/SystemServer.java里面需要增加这个服务,之后重新编译程序就可以了。
第五步,在java应用层调用底层编译好的java service服务。
用eclipse新建一个java项目,然后在这个新建的工程里面把操作的button做好,这个界面由于只是测试程序,所以就做了一个button,这个button的功能就是依次打开和关闭led灯。
资源下载:用到的程序
具体下载目录在 /2012年资料/8月/16日/从HAL层到Java应用层重写mini6410 LED功能/