系統定制的時候需要刪除一些Androd的原生應用,這些模塊的編譯配置在不同的mk文件里面,直接的方法是搜索所有的mk文件,查找這個模塊的名稱。
比如你要去掉Music, 那么在android源碼目錄下運行下面指令:find build/ -name "*.mk"|xargs grep "Music" ,同時你還要搜索device下的mk文件。將包含對應模塊的地方刪除。
當有多個項目時,你可能會考慮加個編譯開關,不同的項目分別開啟還是關閉。 這樣你要改造很多的mk文件。
簡單方式是,你在替換模塊的Andoird.mk下LOCAL_OVERRIDES_PACKAGES這個參數增加要覆蓋的模塊就可以了。
比如我現在用定制的MusicPlayer替換Music,並且去掉MusicFX,那么在編譯MusicPlyer的Android.mk里面增加下面一行:
LOCAL_OVERRIDES_PACKAGES := Music MusicFX
現在如果編譯帶MusicPlayer,就不會有Music MusicFX, 你要去掉其他app也可以帶在后面。