首页 > 技术文章 > Android编译去掉(删除)一些预装应用(APK)的简单方法

goolinli 2021-06-04 16:01 原文

系统定制的时候需要删除一些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也可以带在后面。

推荐阅读