我正在尝试逐渐将 AOSP 从其默认应用程序中剔除。但是我想知道我要应用的方法是否正确并且是最有效的。
在查看了这样做的方法后,我得出了以下方法:(示例应用程序 - “package_name”)
1. Pick particular app and find out its "LOCAL_PACKAGE_NAME"
2. Use "envsetup.sh" provided command "mgrep package_name"
3. Look at the output to determine where package_name is mentioned
4. Remove lines of code containing package_name from makefiles
我也偶然发现了这个解决方案:
您可以在其 Android.mk 中使用 LOCAL_OVERRIDES_PACKAGES 添加新模块、存根和禁用模块,而不是在许多文件夹中修改 AOSP 中的一堆 .mk 文件。如果一个模块仍然出现在目标中,您可能需要向 LOCAL_OVERRIDES_PACKAGES 添加另一个通过 LOCAL_REQUIRED_MODULES 添加不需要的包的模块。
但遗憾的是,我还不知道如何构建一个新的“模块,一个存根”,所以我现在不能应用这种方法。
我是否可以采取任何步骤来确保从我的构建中完全删除特定应用程序而不会损害任何东西。如果有这个特定任务,您认为最优雅的解决方案是什么?什么(文献/文档/网站)对我熟悉像上述案例一样对 AOSP 代码进行“临时表面”更改会有用?
如果这很重要,我现在要删除的是:计算器;日历; 相机; 钟; 联系人;文件;画廊; 消息传递;音乐; 电话; 搜索; 网络视图
提前感谢您的回复!