一准备工作
首先你在自己的电脑上要安装好Ubuntu,然后进行下面的工作,你只需要复制+粘贴就行了
1、安装Git工具。Android源代码采用Git工具来管理,与SVN相比,这是一种分布式的源代码管理工具,而SVN是集中式的源代码管理工具。要安装Git工具,在Ubuntu上执行以下命令即可:
USER-NAME@MACHINE-NAME:~$ sudo apt-get install git-core gnupg
2、安装Java SDK。在Ubuntu上执行以下命令:
USER-NAME@MACHINE-NAME:~$ sudo add-apt-repository ppa:ferramroberto/java
USER-NAME@MACHINE-NAME:~$ sudo apt-get update
USER-NAME@MACHINE-NAME:~$ sudo apt-get install sun-java6-jre sun-java6-plugin
USER-NAME@MACHINE-NAME:~$ sudo apt-get install sun-java6-jdk
顺便提一句,在上面第三步sudo apt-get install sun-java6-jre sun-java6-plugin时,会弹出一个对话框,这时按Tab键来切换焦点,然后按回车就行。
3、依赖的其它包。在Ubuntu上执行以下命令:
USER-NAME@MACHINE-NAME:~$ sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl
此处是安装了很多软件,直接将命令复制粘贴
4、调试工具。在Ubuntu上执行以下命令:
USER-NAME@MACHINE-NAME:~$ sudo apt-get install valgrind
二、源代码的下载
有很多网站都提供了源代码的下载,但是有一些镜像是不能用了,此处给出官方参考网站,如果本地的内容也不能用了时,请参考官网:
http://source.android.com/source/downloading.html
获取Android源代码
1、在当前目录下新建一个目录用来存放我们的Android目录,
mkdir Android
cd Android
mkdir bin
cd bin
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > repo
2、建立存放Android源代码的目录source,并初始化版本
sudo chmod a+x repo
cd ..
mkdir source
cd source
../bin/repo repo init -u https://android.googlesource.com/platform/manifest
如果想要下载android4.0的分支请用命令:
../bin/repo repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1
转换分支用 -b 参数。同时注意,bin和source同时位于Android目录下,是平行结构
3、之后要求输入用户名和地址,可随机输入,也可输入自己的账户
4、同步代码
../bin/repo sync
注意:此时同步代码会非常慢,可能需要几天的时间。同步时可能会出现请求连接失败,在此执行这个命令就行,这个工程文件支持断点续传。
三、Android内核下载
Anroid内核在使用命令../bin/repo sync时并不会被一起下载。如果你不需要对Android内核进行修改和移植,可以不需要这部分内容,可以从Android模拟器中提取这部分内容的镜像
在Android目录下新建一个存放内核的目录kernel,然后执行下面命令
$ git clone https://android.googlesource.com/kernel/common.git
$ git clone https://android.googlesource.com/kernel/goldfish.git
$ git clone https://android.googlesource.com/kernel/msm.git
$ git clone https://android.googlesource.com/kernel/omap.git
$ git clone https://android.googlesource.com/kernel/samsung.git
$ git clone https://android.googlesource.com/kernel/tegra.git
注意,内核不支持断点续传,同时速度要比源代码下载速度快很多
正在尝试编译,编译成功后在将相关的方法发表出来
四、Android源代码导入到工程中
1.把eclipse工程配置文件复制到android源码根目录下
cp development/ide/eclipse/.classpath ./
2.修改eclipse程序的配置
1)、修改eclipse缓存设置
把eclipse.ini(在eclipse软件的安装目录下)的3个值改为下面的值:
-Xms1024m
-Xmx1024m
-XX:MaxPermSize=512m
2)、把android-formatting.xml和android.importorder导入eclipse
android-formatting.xml、.classpath和android.importorder都放在development/ide/eclipse/下
android-formatting.xml用来配置eclipse编辑器的代码风格;android.importorder用来配置eclipse的import的顺序和结构。
在window->preferences->java->Code style->Formatter中导入android-formatting.xml
在window->preferences->java->Code style->Organize Imports中导入android.importorder
3.把android源码作为一个工程导入eclipse
导入前先检查.classpath里的文件在android源码中是否有相应的文件(文件夹),否则也会破坏android源码(一般是多添加文件/文件夹),.classpath里多余的路径可删除
新建Java Project(不是android project,否则会破坏android源码),选择从已存在的工程导入,工程名任意,然后在use default location中选中你的源代码路径 ,完成。