获取android源码主要用到的工具:
cURL:cURL是一个利用URL语法在命令行方式下工作的文件传输工具。
http://curl.haxx.se/

git:android使用的版本控制软件。
http://git-scm.com/download
windows版git(msysGit),带有gui的 http://code.google.com/p/msysgit/downloads/list?can=3

repo:建立在git上的一个管理工具,简化git的使用的。它其实就是一个python脚本文件
http://android.git.kernel.org/repo

除了上面的工具,还需要的一些依赖:
python:repo的命令都是python脚本,所以需要用到python

这里我们使用cygwin来下载上面提到的的大部分工具:
cygwin:
这个项目的名字来源于:GNU、Cygnus、Windows,3者的缩写。Cygwin的目标是:构建一套Windows下的Linux模拟环境。因此,Cygwin是一个庞大的项目,不只包括Linux下的开发环境,也包括工作环境,和各种各样的Linux下的软件。
http://cygwin.com/install.html该页面能够下载到一个网络安装程序setup.exe,然后通过它我们就可以更新和下载最新的工具版本了。

启动cygwin


选择从网络安装


选择安装根目录


选择临时文件目录


代理设置,如果所在的网络需要使用代理的话这里需要进行设置。我使用的是移动额宽带,不存在代理,所以无需设置


选择下载站点,一般离我们较近的站点速度会比较快一点


开始更新工具列表


搜索curl,并选择要安装的包


搜索git,并选择要安装的包。git因为我之前就安装好了,所以我并没有安装这边的,你可以去上面的站点下载.exe的git安装文件


所有python,并选择要安装的包


确定下载所有工具的依赖文件


开始下载...


安装完毕


验证python是否安装成功


没成功你只需要将cygin/bin目录加入到环境变量path中就可以了


curl是否安装成功


使用curl下载repo,repo其实就是一个python脚本而已。
curl的基本使用http://macroc.7mx.cn/20081993247.html



repo脚本


好像这个repo脚本是专门为linux写的,android官方也说明了最好在linux下下载和编译android源码,所以repo在window上没能用起来(主要是对python不熟悉),但这并不影响我们下载源码,因为repo是建立在git上的一个管理工具而已,没有repo,我们可以照样使用git来下载源码。(同时,如果用repo下的话是下载的整个android的源码,虚拟机,一些工具的源码等,有3个多G,但一般我们就只需要其中的一部分而已)。具体可以参考这个:
http://www.cnblogs.com/qianxudetianxia/archive/2011/05/29/2060636.html

因为android的源码很大,所有源码都下载下来的话也没有那个必要,其实只要下载我们所需要的那一部分就ok了,这样的话我们首先得了解一下android的源码结构,不然的话就无从下手了,可以参考这个:
http://blog.csdn.net/pottichu/article/details/5655436

我们以下载android中的浏览器程序的源码为例,来展示如何用git下载需要的代码

首先进入GitWeb页面找到我们想要下载代码。
GitWeb:该网站列出了所有可下载的源码列表。http://android.git.kernel.org/(现在这个网站好像暂时关闭了,默认会跳到android的源码下载页面http://source.android.com/source/downloading.html,这里提供另外一个现在可以查看git资源的网站http://git.tarot.com.tw/,这个现在好像也关闭了,再提供一个github上的,这个应该是比较稳定的:https://github.com/android)



然后在命令行使用git下载那个要下载的源码


下载好后



其它相关网站
git使用参考:
基本使用:http://www.cnblogs.com/qianxudetianxia/archive/2011/06/12/2035974.html
常用命令介绍:http://zensheno.blog.51cto.com/2712776/490748

android官方的源码站点,描述了如何下载源码及如何对android进行编译、移植等:http://source.android.com/index.html

git官网推荐的一些git教程:http://git-scm.com/documentation

git community book:http://gitbook.liuhui998.com/index.html

git user's manual:http://www.kernel.org/pub/software/scm/git/docs/user-manual.html

git magic:也是教程之一,稍微看了一下,好像是斯坦福的教材,还是斯坦福的人编写的

至于选择哪个教程,自己觉得哪个好就看哪个,个人倾向是看最薄的


android java部分源码压缩包下载:http://rgruet.free.fr/public/


下载anroid framework框架的源码,并获取指定版本的框架源码
首先还是进入GitWeb找framework源码的位置(注意,现在android源码的地址发生了改变,好像git web也没有了,具体原因可以看这http://www.cnblogs.com/dancefire/archive/2011/10/21/android_source_server_online_again.html)

只需要下载其中的base部分就够了,其它的就是如google map等

然后使用git来下载。这部分的代码比较大,我下载下来有500多MB,所以需要等待一段时间。我是在source_android下直接下载的,所以默认git创建一个base目录作为根目录
最新的源码地址:git clone http://android.googlesource.com/platform/frameworks/base.git


对于要获取指定版本的framework的源码,比如2.2的,我们是在本地来操作的。因为刚刚下载下来的源码中包含了到目前为止最新的源码。这就要用到git的分支功能了。

首先进入base目录,查看下载下来的源码中的所有分支,然后切换到指定的分支。(对于命令不理解的,上面提供的几个链接里面的教程可以帮助理解)


切换到2.2后,就可以提取需要部分的源码了。(对于到底framework源码放在哪个目录下,也参考上面的android源码目录结构的连接)。java层的源码大部分在core目录中






android的各个版本命名:具体可以参考http://baike.baidu.com/view/1241829.html
Android 1.1
  发布时间:发布于 2008 年9月
Android 1.5
  Cupcake纸杯蛋糕
  发布时间:发布于 2009 年 4 月
Android 1.6
  Donut甜甜圈
  发布时间:2009 年 9 月
Android 2.0
  Eclair松饼
  发布时间:2009 年 10 月 26 日
Android 2.1
  Eclair松饼
Android 2.2
  Froyo冻酸奶
Android 2.3
  Gingerbread姜饼
Android 3.0
  Honeycomb(蜂巢)
Android3.1
  IcecreamSandwich 冰激凌三明治
Android 3.2
  Honeycomb(蜂巢)


更多相关文章

  1. windows系统上使用Android(安卓)NDK r5
  2. android抓包及分析
  3. Android7.0之安装apk文件
  4. Eclipse安装Android插件的问题
  5. Android(安卓)网络应用重点———使用HttpGet 下载apk文件并安装
  6. android版的path2.0菜单功能实现
  7. Eclipse 下配置Android开发环境
  8. How to Install apk to Android(安卓)Devices from Mac OS X
  9. Android下用gdb进行系统级源码调试

随机推荐

  1. MySQL每晚定时弹出一个taskeng.exe的解决
  2. MySQL无法存储emoji表情解决方案分析
  3. MySQL8.0新特性之支持原子DDL语句
  4. mysql存储emoji表情报错的处理方法【更改
  5. MySQL无法存储Emoji表情问题的解决方法分
  6. MYSQL配置参数优化详解
  7. redis服务器环境下mysql实现lnmp架构缓存
  8. Ubuntu 18.04配置mysql以及配置远程连接
  9. mysql存储过程基础之遍历多表记录后插入
  10. mysql实现查询结果导出csv文件及导入csv