在线看Android系统源码,AndroidXRef的简易使用方法
2018-01-24 16:49
1181 查看
转载自:http://blog.csdn.net/hejjunlin/article/details/53454514
前言:最近在研究MediaCodec,u盘坏了,之前下载的源码也就自然没有了,真是个难过的事情,不能因为没有源码了,就阻挡我的计划了呀,于是就是今天一文,在线看Android源码,加之此前很多人也有向我留言,如何看android系统的源码,今天来敲黑板,划重点了。
不管是做Android底层开发,还是做应用层开发,在Android这条路上走下去,必须对于Android源码够了解,如某一个功能,某一个机制,或者某一个API,它到底是如何实现的,需要 Read the fucking source code,才能知其然,知其所以然。下面几种在线看源码的方式:
1,http://androidxref.com
2,http://www.grepcode.com/
3,Android SDK Search插件
来说说这三种方式的体验,http://androidxref.com,这个同步官方源码,最新的7.0,上面也已经有了,我也比较喜欢这个,该有的功能应用尽有,第2个的话,如图,还停留在5.1阶段,也找不到我想要的,于是果断放弃了。Android SDK Search也还行。下面重点介绍Android SDK Search
插件和androidxref。
http://www.grepcode.com/
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/a181d359a21056d6bd2e48474ee2951a)
Android SDK Search
在 Android 开发或者源码分析时,一般会去查看 Google 官方提供的 Android API,如果希望深入了解 API 实现的细节,当然最好的方法就是去看源代码了。对于在线 API 文档,如果在查看时,还能够查看到源代码那当然是最好不过的。在 Chrome 浏览器下,可以安装 Android SDK Search 扩展程序来达到这个目的,该扩展程序在 Chrome网上应用店截图如下所示。安装完该扩展程序后,再次搜索 Android API 后,会在相应的搜索结果后增加一个 view source链接。例如搜索
Activity 类,结果如图 4 所示。点击 view source链接,就可以打开 Activity类的源代码,如图所示,从网页中可以看出其实是链接到了 Google 的 Android 源码的 Git
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/0d9fb251897cc7e5beb4a6f413d5e495)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/fcff07e4160f85dd56733c2fa3201f78)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/b51cf75150d782de2b3f76e7a59b72a7)
AndroidXRef
AndroidXRef(http://androidxref.com/)项目提供 Android 源码的交叉索引,可以快速的搜索符合特定条件的 Android 源代码,后台是基于 OpenGrok 引擎,OpenGrok是一个快速,便于使用的源码搜索引擎与对照引擎,它能够帮助我们快速的搜索、定位、对照代码树。AndroidXRef
提供了完整的 Android kernel源码的索引。在 AndroidXRef 主页的右侧显示了可用的源码版本,如图所示,
点击相应的源码版本链接
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/0d2df0b478116293b8ad9983e587ba14)
就可以进入对应的源码分支,如图所示,我进入6.0的最新分支:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/b9bf35f626dafba07b63e2a1982179e8)
本文来自逆流的鱼yuiop,原文链接:http://blog.csdn.net/hejjunlin/article/details/53454514
上图右侧提供在特定目录下搜索,例如在分析 Framework源码时,可以选择 frameworks 目录,这样可以减少搜索范围,缩短搜索时间,能够更加精确地定位到需要的源代码。左侧是提供了一些搜索的条件,其意义如下(在指定的 Project(s)下):
Full Search: 进行全文搜索,会匹配所有的单词、字符串、标识符以及数字等,例如在frameworks 下通过 Full Search 搜索”mediacodec“
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/21792a13250445dfc74d94a375bda3d8)
点击”search“,会显示所有包含mediacodec字符(忽略大小写)的结果,即使是注释也会显示出来,如下图,点击对应的链接会打开包含mediacodec所在的文件夹
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/9d75e29db02c8ba17314cae5252d53a7)
点击左侧文件名如 TrackDecoder.java链接会打开包含mediacodc字符串文件;
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/c69dbcf2a36d0c4a1471f3a305cab924)
其他依次类推,点击右侧每一行的搜索结果链接同样会打开相相应的文件内容;
Definition:搜索符号定义相关的代码,例如搜索 ondraw 函数的定义,显示结果如图
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/e9777096fc3f855fff811a931c8440c2)
提示你是否要找onDraw,onChildDraw等方法,我们点击onDraw,立刻跳转到如下页面:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/9060966912e8c71c4541f95dfabf9753)
从搜索结果可以看到,所有onDraw方法的类都会列出来,到第6页,找到我们熟悉的TextureView,点击进去
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/974f110909c6b5fcde43fe5e8248cec3)
Symbol:搜索符号,例如可以搜索类中的成员变量等,下图显示了通过 Symbol 搜索FEATURE_NO_TITLE的结果
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/1fb265fcffffea021d1d96b57c58a646)
平时我们在this.requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏,这个FEATURE_NO_TITLE就是在Window.java中的,
本文来自逆流的鱼yuiop,原文链接:http://blog.csdn.net/hejjunlin/article/details/53454514
File Path:搜索源码文件名中包含给定字符串的文件,例如想要搜索文件名包含mediacodec的源码文件,则可以在 File Path 中填入 mediacodec 进行搜索,结果如下所示
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/d7052c4f79e6ffdd5a30cb93edb582af)
这刚好就是我相要的,比起在IDE中一个一个看,这里这个功能不得不说6的飞起。
History:这个几乎没有用,用处肯定也不大,我尝试过各种搜索。
上面只是单一的搜索,如果是多个条件呢?这里依然满足,
如搜索mediacodec.cpp中的start函数,如图所示:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201801/9f6b8e4e62e749a071c95281d010ce5b)
由于AndroidXRef 使用的是 OpenGrok 引擎,因此还支持一些其他的搜索方式:在【http://androidxref.com/6.0.0_r5/help.jsp】,写的相当详细,感兴趣的同学可以看看。
前言:最近在研究MediaCodec,u盘坏了,之前下载的源码也就自然没有了,真是个难过的事情,不能因为没有源码了,就阻挡我的计划了呀,于是就是今天一文,在线看Android源码,加之此前很多人也有向我留言,如何看android系统的源码,今天来敲黑板,划重点了。
不管是做Android底层开发,还是做应用层开发,在Android这条路上走下去,必须对于Android源码够了解,如某一个功能,某一个机制,或者某一个API,它到底是如何实现的,需要 Read the fucking source code,才能知其然,知其所以然。下面几种在线看源码的方式:
1,http://androidxref.com
2,http://www.grepcode.com/
3,Android SDK Search插件
来说说这三种方式的体验,http://androidxref.com,这个同步官方源码,最新的7.0,上面也已经有了,我也比较喜欢这个,该有的功能应用尽有,第2个的话,如图,还停留在5.1阶段,也找不到我想要的,于是果断放弃了。Android SDK Search也还行。下面重点介绍Android SDK Search
插件和androidxref。
http://www.grepcode.com/
Android SDK Search
在 Android 开发或者源码分析时,一般会去查看 Google 官方提供的 Android API,如果希望深入了解 API 实现的细节,当然最好的方法就是去看源代码了。对于在线 API 文档,如果在查看时,还能够查看到源代码那当然是最好不过的。在 Chrome 浏览器下,可以安装 Android SDK Search 扩展程序来达到这个目的,该扩展程序在 Chrome网上应用店截图如下所示。安装完该扩展程序后,再次搜索 Android API 后,会在相应的搜索结果后增加一个 view source链接。例如搜索
Activity 类,结果如图 4 所示。点击 view source链接,就可以打开 Activity类的源代码,如图所示,从网页中可以看出其实是链接到了 Google 的 Android 源码的 Git
AndroidXRef
AndroidXRef(http://androidxref.com/)项目提供 Android 源码的交叉索引,可以快速的搜索符合特定条件的 Android 源代码,后台是基于 OpenGrok 引擎,OpenGrok是一个快速,便于使用的源码搜索引擎与对照引擎,它能够帮助我们快速的搜索、定位、对照代码树。AndroidXRef
提供了完整的 Android kernel源码的索引。在 AndroidXRef 主页的右侧显示了可用的源码版本,如图所示,
点击相应的源码版本链接
就可以进入对应的源码分支,如图所示,我进入6.0的最新分支:
本文来自逆流的鱼yuiop,原文链接:http://blog.csdn.net/hejjunlin/article/details/53454514
上图右侧提供在特定目录下搜索,例如在分析 Framework源码时,可以选择 frameworks 目录,这样可以减少搜索范围,缩短搜索时间,能够更加精确地定位到需要的源代码。左侧是提供了一些搜索的条件,其意义如下(在指定的 Project(s)下):
Full Search: 进行全文搜索,会匹配所有的单词、字符串、标识符以及数字等,例如在frameworks 下通过 Full Search 搜索”mediacodec“
点击”search“,会显示所有包含mediacodec字符(忽略大小写)的结果,即使是注释也会显示出来,如下图,点击对应的链接会打开包含mediacodec所在的文件夹
点击左侧文件名如 TrackDecoder.java链接会打开包含mediacodc字符串文件;
其他依次类推,点击右侧每一行的搜索结果链接同样会打开相相应的文件内容;
Definition:搜索符号定义相关的代码,例如搜索 ondraw 函数的定义,显示结果如图
提示你是否要找onDraw,onChildDraw等方法,我们点击onDraw,立刻跳转到如下页面:
从搜索结果可以看到,所有onDraw方法的类都会列出来,到第6页,找到我们熟悉的TextureView,点击进去
Symbol:搜索符号,例如可以搜索类中的成员变量等,下图显示了通过 Symbol 搜索FEATURE_NO_TITLE的结果
平时我们在this.requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏,这个FEATURE_NO_TITLE就是在Window.java中的,
本文来自逆流的鱼yuiop,原文链接:http://blog.csdn.net/hejjunlin/article/details/53454514
File Path:搜索源码文件名中包含给定字符串的文件,例如想要搜索文件名包含mediacodec的源码文件,则可以在 File Path 中填入 mediacodec 进行搜索,结果如下所示
这刚好就是我相要的,比起在IDE中一个一个看,这里这个功能不得不说6的飞起。
History:这个几乎没有用,用处肯定也不大,我尝试过各种搜索。
上面只是单一的搜索,如果是多个条件呢?这里依然满足,
如搜索mediacodec.cpp中的start函数,如图所示:
由于AndroidXRef 使用的是 OpenGrok 引擎,因此还支持一些其他的搜索方式:在【http://androidxref.com/6.0.0_r5/help.jsp】,写的相当详细,感兴趣的同学可以看看。
相关文章推荐
- 在Android源码环境下编译系统App使用第三方jar包的方法(备忘)
- 使用代理下载android系统源码和SDK
- 使用eclipse将android2.3 phone源码导入并编译的方法
- Android系统开发中log的使用方法及简单的原理
- android学习笔记---53_采用网页设计软件界面,以及使用android系统内置的浏览器,利用js调用java方法
- mars老师[Android开发视频教学].01_16_SQLite使用方法 视频源码
- Android 使用git下载源码报错解决方法
- 在线评测系统(OJ)使用方法
- 单独导入android源码里具体的应用举例 android2.3源码里单独导入单个系统应用模块的方法
- Android4.0.3系统源码下载及eclipse导入Android系统源码的方法
- logcat命令使用方法和查看android系统日志缓冲区内容的方法
- GIT和repo使用方法:下载内核 android源码包
- [转载]查看基于Android 系统单个进程内存、CPU使用情况的几种方法
- android学习笔记---53_采用网页设计软件界面,以及使用android系统内置的浏览器,利用js调用java方法
- 查看基于Android 系统单个进程内存、CPU使用情况的几种方法
- Android得到系统已安装应用程序包列表方法 自定义ListView显示 PackageManager的使用
- mac 系统下android源码下载以及使用(总结)
- 查看基于Android 系统单个进程内存、CPU使用情况的几种方法
- 生成黑白画笔,android使用系统浏览器打开网页,将Bitmap图片存储在本地JPG文件的方法
- 查看基于Android 系统单个进程内存、CPU使用情况的几种方法