文档章节

windows下配置android源码获取环境

枫影Xda
 枫影Xda
发布于 2012/04/18 11:01
字数 1605
阅读 492
收藏 0
获取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/) 



然后在命令行使用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(蜂巢) 

© 著作权归作者所有

枫影Xda
粉丝 24
博文 85
码字总数 56898
作品 0
长沙
私信 提问
加载中

评论(1)

马刚
马刚
图片看不了
Android AOSP基础(一)趁周末用VirtualBox 安装 Ubuntu吧

本文首发于微信公众号「刘望舒」 相关系列文章 Android系统启动系列 应用进程启动系列 Android深入四大组件系列 Android深入理解Context系列 Android深入理解JNI系列 Android解析WindowManag...

刘望舒
05/15
0
0
使用git工具获取android源代码

Android使用Git管理源代码的,在Linux下我们可以使用ubuntu来获取系统源码,下面我就逐步介绍在Windows些如何获取Android系统源码了。 一。安装msysGit 在google的http://code.google.com/p/...

jxlgzwh
2013/06/17
1K
0
How to know your application’s battery stats

本文主要分享Android应用耗电量的统计分析方法和工具。 众所周知,Android系统内置了应用的耗电量统计分析功能,但是并没有提供相应的API和文档,只是可以查看耗电量排行榜前10的应用的耗电百...

SuShine
2018/08/01
37
0
Android NDK安装

Android NDK安装 前面介绍Windows下Android 开发环境配置,主要是面向JAVA开发环境,对只做APK上层应用开发人员来讲,基本够用了,由于Linux系统的权限限制和Android封装架构限制,很多涉及底...

长平狐
2012/08/29
998
0
Windows环境下Android NDK环境搭建

前面介绍Windows下Android 开发环境配置,主要是面向JAVA开发环境,对只做APK上层应用开发人员来讲,基本够用了,由于Linux系统的权限限制和Android封装架构限制,很多涉及底层设备、接口、驱...

子曰疯
2013/09/11
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

iOS Xcode升级包地址(感谢大神)

下载地址:DeviceSupport

_____1____
32分钟前
6
0
Qt编写自定义控件71-圆弧进度条

一、前言 现在web形式的图表框架非常流行,国产代表就是echart,本人用过几次,三个字屌爆了来形容,非常强大,而且易用性也非常棒,还是开源免费的,使用起来不要太爽,内置的各种图表和仪表...

飞扬青云
32分钟前
4
0
润乾报表与 ActiveReport JS 功能对比

简介 润乾报表是用于报表制作的大型企业级报表软件,核心特点在于开创性地提出了非线性报表数学模型,采用了革命性的多源关联分片、不规则分组、自由格间运算、行列对称等技术,使得复杂报表...

泡泡糖儿
43分钟前
5
0
【1015】LNMP架构二

【1015】LNMP架构二 三、PHP安装 PHP安装和LAMP安装PHP方法有差别,需要开启php-fpm服务 1、下载PHP7至/usr/local/src/ 切换目录:cd /usr/local/src 2、解压缩 tar -jxvf php-7.3.0.tar.gz...

飞翔的竹蜻蜓
今天
5
0
浅谈Visitor访问者模式

一、前言 什么叫访问,如果大家学过数据结构,对于这点就很清晰了,遍历就是访问的一般形式,单独读取一个元素进行相应的处理也叫作访问,读取到想要查看的内容+对其进行处理就叫作访问,那么...

青衣霓裳
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部