好的n00b问题,但最近我对我的设备,Herolte(Galaxy S7)的ROM开发感兴趣,并希望用LineageOS构建它(基本上是vanilla Android)。我已经拥有所有源代码和构建在我的虚拟机上完美运行,安装也很顺利!不幸的是,有一件事一直困扰着我,定制化!
我想自定义Dialer应用程序,但我意识到当我尝试在Android Studio中打开它时,它不会显示项目结构下的所有文件,只显示“R”,“Manifest”,“BuildConfig”。没有drawables文件夹或任何东西(虽然我的文件夹中的源代码/目录显示它)。所以我假设我错过了一些但不确定它到底是什么,所以任何帮助都将不胜感激。我确实理解像Dialer或Contacts这样的应用程序与它使用的Android框架密切相关,就像三星拨号器与TouchWiz绑定一样。
我本质上想要修改原始应用程序的一些参数,然后使用LineageOS构建它们。感谢任何帮助,谢谢!
答案 0 :(得分:1)
AOSP是通过基于“make”的自定义构建系统构建的。当您在Android工作室中打开AOSP时,您可以很好地表示项目源和一些资源,但您应该始终记住,最终应用程序的编译将由'make'构建系统及其'mk'文件进行。
对于“拨号器”应用,如果您查看其Android.mk文件,可以找到应用资源位置的提示。请注意,资源是从以下位置导入的:
> res_dirs := res \
> $(incallui_dir)/res \
> $(contacts_common_dir)/res \
> $(contacts_common_dir)/icons/res \
> $(phone_common_dir)/res
深入研究这些定义将在以下目录中得到解决:/packages/apps/PhoneCommon/res/