2012-09-04 40 views
3

我正在使用Android 2.3.3的飛思卡爾i.mx53板,我試圖將我自己的android本機服務添加到init.rc中,以便它在啓動時運行。我試過按照指南http://www.androidenea.com/2009/08/init-process-and-initrc.html,包括他們的示例服務代碼。不過,我正在用android ndk將示例服務代碼構建到ARM二進制文件中。修改init.rc以添加我自己的android本機服務

如果我在adb shell中手動運行示例服務,則該示例服務可用。但是,當我把它放在src/system/core/rootdir/init.rc的末尾時,似乎沒有任何事情發生。

啓動後,我查看設備根目錄中的init.rc,它與源中的init.rc不一樣。值得注意的是,我添加的行不在那裏。

什麼可能是錯的?

回答

5

這不能從shell完成。 init.rcramdisk的一部分,而不是system分區。所以在啓動時,init.rc接收來自ramdisk。所以無論你對init.rc做什麼改變都不會被反映出來。

據我所知唯一的辦法就是建立ROM和刷寫

檢查這個post,它是相關的,可能有助於

0

當您使用模擬器,添加選項「-ramdisk出/ target /中。 ../ramdisk.img「,仿真器上的init.rc將使用自定義版本。而就我而言,您還需要在選項中添加「class」。