MAC下阅读Android源代码

之前在Linux环境下开发的时候,一直用source insight查看源代码,觉得挺方便的,但是在mac Retina环境下,source insight变得不再可用。于是可是尝试在eclipse和Android Studio下导入Android源代码查看。

一、使用eclipse阅读Android源码:
这种方式不需要编译源代码,能够快捷方便导入。
1.将eclipse工具根目录下的.classpath文件复制到Android源码根目录
cp /eclipse/.classpath ~/sourcecode
2.加快编译导入源代码,可修改eclipse缓存设置
可根据自己的机器适当调整eclipse.ini文件的3个值:
-Xms128m
-Xmx768m
-XX:MaxPermSize=512m
(mac路径:eclipse/Eclipse.app/Contents/MacOS/eclipse.ini)
3.导入eclipse代码风格
把android-formatting.xml和android.importorder导入Eclipse
~/android/development/ide/eclipse/android-formatting.xml
~/android/development/ide/eclipse/android.importorder
4.导入Android源码
新建Java Project(不是Android project),选择从已存在的工程导入,定位到Android源码的目录进行导入即可。


二、使用Android Studio阅读Android源码:

首先需要编译出来android.iml和android.ipr这两个文件,这两个文件是Android Studio的工程配置文件。如果已经有了,就不需要编译了
本人clone的源代码版本是6.0.1,编译出来的这几个文件已上传共享至http://download.csdn.net/download/qyf2010qyf/9606979,由于MAC编译源代码比较费时费力,不想编译的,可直接下载然后根据步骤2导入就可以了。
 1.编译源代码
在MAC下编译源代码相比Linux稍微麻烦点,具体可参考源代码官网配置:http://source.android.com/source/initializing.html
可能遇到的问题:
(1)Unknown value ‘10.11’ of -mmacosx-version-min
当前的android 源码尚不能在这个mac版本编译,解决办法:获取最新的Android源代码,Android源代码6.0.1支持在mac os 10.11 以上编译。
(2)fatal error: linux/netfilter/xt_DSCP.h: No such file or directory
解决办法:网上搜索一下这个头文件内容新建一份就可以了。
(3)磁盘空间不足

解决办法:如果确认代码已经完整clone,删除.repo文件夹内容,能节省不少空间。

如果感觉编译时间比较长,而自己MAC的配置比较高的话,可以把编译命令make -j参数调整到32或64,效果还是比较明显的。


2.生成工程配置文件并导入源代码


(1)编译完成之后,进入Android 源码根目录,执行mmm development/tools/idegen/
(2)sh ./development/tools/idegen/idegen.sh
在根目录会生成对应的文件:android.ipr, android.iml
(3)打开Android Studio,选择打开一个现有的Android Studio项目,选择Android源码的根目录,导入即可(起作用的是android.irp文件).在配置sdk版本之后就可以查看Android 源码了.

生成工程配置文件的过程,如果有问题,可详细参考http://www.jianshu.com/p/c85984cf99e2。

总结:
个人感觉Android Studio阅读Android源码相比eclipse还是比较好用点,eclipse全局搜索key word,会出现卡死的现象,Android Studio双击shift查找文件非常方便好用,但是两者感觉在查看c/c++代码方面都没有source insight方便,不能快捷跳转查看定义。

你可能感兴趣的:(Android,Tool)