Android系统源码查看

Android系统源码学习

在经过一系列的辛苦之后,终于把Android系统源码下载下来了,剩下的就是如何查看学习系统源码了。
这时一个问题出现了,Android系统源码如此庞大,该如何查看?
经过苦苦挣扎,然后询问广大网友,得知Android studio也可查看系统源码,立刻兴奋起来,马上搜索一下。

步骤一:

进入Android 源码根目录,当然,这个源码是在Linux环境下并且已经成功编译完成,要不然也不能编译是不是

  • 在命令行终端执行

mmm development/tools/idegen/

这行命令的意思是编译idegen这个项目,生成 idegen.jar文件.生成成功后,会显示这个jar包的位置,并显示 #### make completed successfully (43 seconds) #### ,如果编译失败了,后面会讲到这种情况(比较少见)

然而问题来了,无法找到 mmm命令,出现以下提示

 No command 'mmm' found, did you mean:    
 Command 'mwm' from package 'motif-clients' (multiverse)    
 Command 'mwm' from package 'lesstif-bin' (universe)    
 Command 'mgm' from package 'mgm' (universe)    
 Command 'rmm' from package 'nmh' (universe)    
 Command 'rmm' from package 'mailutils-mh' (universe)    
 Command 'mmv' from package 'mmv' (universe)    
 Command 'mmd' from package 'mtools' (main)    
 Command 'mmg' from package 'mkvtoolnix-gui' (universe)    
 Command 'mm' from package 'mountmanager' (universe)    
 Command 'mm' from package 'multimail' (universe)   

 未找到 'mmm' 命令,您要输入的是否是:  
 命令 'mwm' 来自于包 'motif-clients' (multiverse)  
 命令 'mwm' 来自于包 'lesstif-bin' (universe)  
 命令 'mgm' 来自于包 'mgm' (universe)  
 命令 'rmm' 来自于包 'nmh' (universe)  
 命令 'rmm' 来自于包 'mailutils-mh' (universe)  
 命令 'mmv' 来自于包 'mmv' (universe)  
 命令 'mmd' 来自于包 'mtools' (main)  
 命令 'mmg' 来自于包 'mkvtoolnix-gui' (universe)  
 命令 'mma' 来自于包 'mma' (universe)  
 命令 'mm' 来自于包 'mountmanager' (universe)  
 命令 'mm' 来自于包 'multimail' (universe)  

再次搜索发现使用m、mm、mmm命令之前要在android源码目录下执行命令

. build/envsetup.sh

步骤二:

在Android源码根目录执行

sh ./development/tools/idegen/idegen.sh

development/tools/idegen/idegen.sh

就会得到以下结果:

Read excludes: 1ms
Traversed tree: 3114ms

这行命令的意思是生成对应的文件(在android系统源码的根目录下):android.iws, android.ipr, android.iml 。
其中上面的 sh 命令指的是运行shell脚本

步骤三:

导入 Android studio
打开Android studio,点击File > Open,选择刚刚生成的android.ipr就好了。
过一会儿可以在android studio完美打开了

参考文章:
http://www.jianshu.com/p/c85984cf99e2
http://www.cnblogs.com/qianxudetianxia/p/3721202.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容