Android最近发行的版本,文档的支持有点少。Android的源代码就可以填补这个空白。
Android源码的发行版本可以在http://source.android.com中找到。在2008年10月开源。开源联盟的目标就是让android成为一个免费的,完全可以定制的移动平台。这个平台可以在所有移动设备上无缝的使用。源码模型允许其他公众组织贡献源代码。
正如声明的那样,android是一个平台而不仅仅是一个项目。你可以在http://source.android.com/projects上看到项目的范围和数量。
Android的源代码和所有项目是由一个叫Git的源代码管理工具管理的。Git(http://git.or.cz)是一个开源的源代码管理系统。这个系统可以迅速和方便的来管理大小项目。像Linux的内核以及运用在web编程的ruby on rails项目都是依靠Git进行版本控制的。Git库里面完整的android项目列表可以在http://android.git.kernel.org/里找到。
你可以用Git下载这些项目,项目的描述也可以在Git的网站上找到。最初的项目包括Dalvik虚拟机,框架(android.jar文件),Linux内核以及想Apache HTTP库之类的外部库。Android的核心应用程序在这里也可以找到。这些核心程序包括:闹钟、浏览器、计算器、日历、摄像、通讯录、邮件、谷歌搜索、stk、sync、更新、语音拨号等等。
Android项目中还包括Provider项目。Provider项目就像android里面的数据库,给应用程序提供数据。这些项目包括CalendarProvider、
ContactsProvider、DownloadProvider、DrmProvider、GoogleContactsProvider、MediaProvider、SettingsProvider、TelephonyProvider等等。作为一个开发者,你可能最关心组成android.jar文件的源代码。(如果你打算下载整个平台,自己进行编译的话,去http://source.android.com/download里看相关文档)你可以在如下网址下载到这个jar文件:http://git.source.android.com/?p=platform/frameworks/base.git;a=snapshot;h=HEAD;sf=tgz 。
这个是你想下载Git项目的通用URL。在windows系统里,你可以用pkzip来解压缩这个文件。虽然你可以下载下来看,不过如果你不打算在你的IDE里面调试的话,在线看可能会更加方便一些。你可以在下面的网址中在线查看android.jar文件:

http://android.git.kernel.org/?p=platform/frameworks/base.git;a=summary。

浏览这个页面的时候,打开下拉菜单,在search框中输入些文本,在搜索结果中点击相关标题,就可以在浏览器中看到源文件了。这个机制能很方便的查看源代码。
有时候,你要找的文件可能不在frameworks/base目录下。那样的话,你就必须在项目中一个个的找了。网址:http://android.git.kernel.org/。
你不可能找遍所有的项目,所以你需要明白你要找的项目在那个机制下。举例来说,Skia 项目中图像相关的库可以在下面的网址中得到:

http://android.git.kernel.org/?p=platfrom/external/skia.git;a=summary。SkMatrix.cpp文件里包含了矩阵变换的源码,在动画里面非常有用:http://android.git.kenel.org/?p=platform/external/skia.git;a=blob;f=src/core/SkMatrix.cpp。

更多相关文章

  1. Android Studio 第一次新建Android Gradle项目超级慢的解决方案
  2. Android 瘦身之道 ---- so文件
  3. Android 之 向模拟器的sdcard中添加文件
  4. 转载:Android 解压zip文件
  5. Android SD卡创建文件和文件夹失败
  6. Android Studio中导入现有Eclipse项目(多图步骤详细)
  7. 解决windows下eclipse中android项目关联android library project

随机推荐

  1. android visible invisible和gone差异
  2. Android学习之Android本地存储的五种方式
  3. 在Android Studio更改现有项目里的SDK版
  4. Android 设定横屏,禁止屏幕旋转,Activity重
  5. Android EditText 禁止软键盘弹出
  6. Android界面设计学习
  7. Android学习笔记4之容器
  8. Android(安卓)关于fragment切换
  9. C#开发Android应用实战——使用Mono for
  10. android json实现网络请求 和普通的http