如何下载Android源代码

本文介绍了三种下载Android源代码的方法。方法1是通过Git Windows客户端逐个下载模块;方法2是在Ubuntu环境下下载整个branch,涉及git、curl、repo和python工具;方法3是在Windows下借助Cygwin解决“Unable to Remap to Same Address as Parent”错误进行下载。详细步骤包括使用repo脚本、创建目录、执行同步命令等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android已经火了很长时间了,虽然做手机开发也有两年了,但是一直没有深入接触到Android。前些天想下载Android源代码来看看,没想到http://android.git.kernel.org九月初就被黑掉了。花了几个星期,在网上找了很多资料,昨天终于可以开始下载了。

方法1.使用git windows客户端,在https://github.com/android找到某一个模块的地址下载。此方法比较简单,网上有很多相关帖子。
在windows下创建存放android代码的目录,右击选择Git Bash,输入git clone https://github.com/android/platform_manifest.git,即可下载platform/manifest下的源代码.其他的源码下载以此类推。一个一个地下载太麻烦了,可以利用批量工具CreatAutoGetSh,将https://www.codeaurora.org/gitweb/quic/la/页面projects以下的内容复制到一个文件(page.txt)中,在命令行窗口,进入CreatAutoGetSh的存放目录,输入CreatAutoGetSh page.txt autoget.sh,生成autoget.sh,将其考别到打算下载android源代码的目录,然后右击文件夹运行Git Bash,运行autoget.sh,就开始漫长的下载过程了。

方法2.下载整个branch,主要参考了以下网页:

http://php.webtutor.pl/en/2011/09/05/kernel-org-hacked-how-to-get-android-repo/

http://groups.google.com/group/android-building/browse_thread/thread/fb8f48025c95ddd3/6ffa4fb5d33a4bfc

https://www.codeaurora.org

因为需要用到git,curl,repo,python等工具,所以先在Ubuntu下尝试,目前正在下载。

首先,下载repo脚本。

$curl "http://php.webtutor.pl/en/wp-content/uploads/2011/09/repo">./repo
$chmod a+x repo

然后,就可以下载Android源代码了。

$mkdir WORKING_DIRECTORY
$cd WORKING_DIRECTORY
repo命令格式如下:branch和manifest可以在codeaurora.org上查到。
$ repo init -u git://codeaurora.org/platform/manifest.git-b [branch] -m [manifest] --repo-url=git://codeaurora.org/tools/repo.git
我使用的命令如下:
$ repo init -u git://codeaurora.org/platform/manifest.git -b gingerbread_house -m M7630AABBQMLZA414001.xml 
$ repo sync 

repo sync支持断点续传,如果发现停在某个地方不动了,可以ctrl+c取消掉,再执行。或者可以写一段脚本自动执行。
修改bash如下:

#!/bin/bash
while true
do
    if repo sync
      then
       echo "repo sync successfully."
      break
    else
       echo "repo sync failed. retry..."
       repo sync
    fi
done

方法3.在Windows下,需要安装Cygwin,如果在执行repo的时候,出现"Unable to Remap to Same Address as Parent"错误的话,需要先关闭Cygwin,然后运行Cygwin/bin目录下的ash/dash,并输入$ /bin/rebaseall -v,即可消除错误。之后就是执行curl及repo了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值