关于Android的硬件抽象层添加进Android系统默认编译的问题
這里主要是遇到兩個問題:第一個是,自己編寫的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層的東西,這個修改添加的文件都是默認被編譯安裝的,只需要添加代碼即可。
總結
以上是生活随笔為你收集整理的关于Android的硬件抽象层添加进Android系统默认编译的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android NFS文件系统挂载遇到的
- 下一篇: android sina oauth2.