您的位置:首页 > 移动开发 > Android开发

关于Android的硬件抽象层添加进Android系统默认编译的问题

2017-03-09 17:12 351 查看
原文地址:http://blog.csdn.net/wang_shuai_ww/article/details/39577203

这里主要是遇到两个问题:

第一个,自己编写的hal层源码怎么添加进Android的默认编译中去,也就是说在根目录执行make时,自己编写hal源码也会被编译;

第二个,编译完成后还要自动安装在指定的系统目录lib/hw下。

刚开始时不太了解,总是需要使用mmm来进行编译安装,但是打包之后再编译这是不现实的。为此需要添加到默认中去。

一般来说hal层所在的位置在hardware/libhardware/modules目录下。假如我写个led的hal层,那么在modules目录下建立一个led文件夹即可,在led文件夹添加代码和Android.mk。

对于第一个问题的解决方法是,修改modules目录下的Android.mk文件,在hardware_modules变量中添加led文件夹的名字即可。这样在默认中就会自动编译这个led的文件了。

这样虽然可以编译了,但是却不会自动安装。那么安装这个要修改哪里呢,找了好久终于找到了,要修改device/samsung/smdkv210/device.mk这个文件中的PRODUCT_PACKAGES变量,在该文件的最后添加PRODUCT_PACKAGES += led.default这行代码即可。

有了以上两个修改,默认就会编译并且安装了,其他的也都类似了。

另外还有一个jni层的东西,这个修改添加的文件都是默认被编译安装的,只需要添加代码即可
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐