http://source.android.com Step 1.按照http://source.android.com/source/initializing.html配置好android编译环境

http://source.android.com/source/downloading.html配置好repo,大概步骤如下
    $ mkdir ~/bin 
  $ PATH=~/bin:$PATH
  $ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo 
  $ chmod a+x ~/bin/repo
  $ mkdir WORKING_DIRECTORY 
  $ cd WORKING_DIRECTORY
  以上命令不再解释,很简单很明白。
    
Setp 3.从其他镜像获取源代码
   如果要下载最新的源代码,则执行:
  $ repo init -u git://git.omapzoom.org/platform/manifest
    如果要获取每个tag,譬如2.3.5,则可以执行:
    $ repo init -u git://git.omapzoom.org/platform/manifest -b android-2.3.5_r1
  如果你不知道具体的tag叫什么名字,那么可以在浏览器访问http://git.omapzoom.org,并点击上面的/platform/manifest链接,那么可以看到所有的tag名称.
    执行repo init过程中,可能需要填写一些个人信息,直接填写即可。
    配置好repo后,执行repo sync即可下载你所需要的源代码了。

下载代码出错

  1. error: Failed to connect to 2404:6800:4005:c00::52: Network is unreachable while accessing https://android.googlesource.com/mirror/manifest/info/refs
  2. fatal: HTTP request failed

解决方法

1. 浏览器登录https://android.googlesource.com/new-password,并用gmail帐号登录;

2. 点击网页上的“允许访问”,得到类似

  1. machine android.googlesource.com login git-jacky.rg4.net password 1/dkRiGEvvC8o8Pgg-GsM2AbMNS_32-U0Pf0_VWkYogIA
  2. machine android-review.googlesource.com login git-jacky.rg4.net password 1/dkRiGEvvC8o8Pgg-GsM2AbMNS_32-U0Pf0_VWkYogIA

3. 把上面那段信息追加到~/.netrc文件结尾(请检查当前用户的权限, 如果不存在此文件则自己新建一个);

4. 下载地址的URI更改为https://android.googlesource.com/a/platform/manifest(中间加上了“/a”)。

5. repo init -u https://android.googlesource.com/a/platform/manifest -b android-4.0.3_r1

6. repo sync

即可拉下Android源码。

官方的说法是:因为访问基本是匿名的,为了防止连接过多(指内网/虚拟机),对同一IP地址的连接数做了一定的限制。看来是用gmail帐号进行认证。

这样的话,在公司网络内或者用虚拟机下载的话,会经常遇到这问题。

源码官网指导网址: http://source.android.com/source/downloading.html

查看Android源码版本

  1. $ grep PLATFORM_VERSION build/core/version_defaults.mk
  2. #     PLATFORM_VERSION
  3. #     PLATFORM_VERSION_CODENAME
  4. ifeq "" "$(PLATFORM_VERSION)"
  5. PLATFORM_VERSION := 4.1.2
  6. # SDK version the branch is based on and PLATFORM_VERSION_CODENAME holds
  7. ifeq "" "$(PLATFORM_VERSION_CODENAME)"
  8. PLATFORM_VERSION_CODENAME := REL
  9. ifeq "REL" "$(PLATFORM_VERSION_CODENAME)"
  10. DEFAULT_APP_TARGET_SDK := $(PLATFORM_VERSION_CODENAME)

断网时自动进行repo sync继续下载android源码

症状分析: 在Android源码下载时,经常会断掉,这时,就得重新输入repo sync,那么,有没有一种方法在断网时自动进行repo sync呢?

解决对策:

vi  repo_sync.sh

#!/bin/bash
repo sync
while [ $? -ne 0 ]
do
repo sync
done

ubuntu10.04 amd64 git版本升级,error: Exited sync due to gc errors

    1. ubuntu10.04出现error:Exited sync due to gc errors解决方法
    2. error: Exited sync due to gc errors 解决方法
    3. 原因: repo 升级,不兼容GIT  1.7.2 以下的版本。
    4. 升级git到 1.7.2以及以上的版本, 升级方法
    5. 增加ppa
    6. sudo apt-add-repository ppa:git-core/ppa
    7. sudo apt-get update
    8. sudo apt-get install git
    9. 如果本地已经安装过Git,可以使用升级命令:
    10. sudo apt-get dist-upgrade

下载android源码的更多相关文章

  1. 【Linux/Ubuntu学习6】unbuntu 下载android源码

    在Windows下安装Cygwin,通过Cygwin也可在Windows里通过本文的下载步骤下载Android源码. 以下为在Ubuntu下下载Google Android4.4源码的步骤: 1. 安 ...

  2. Windows平台下载Android源码(整理)

    Google官方下载源码使用的系统Ubuntu系统,不过现在我们需要在Windows系统中下载Android源码文件. 网站的地址是:https://android.googlesource.com/ ...

  3. 通过清华大学镜像下载Android源码并编译源码

    之前看源码都是在Windows下用SourceInsight看,虽然达到了研究源码的效果,但终究还是有遗憾...趁着周末,准备在Ubuntu虚拟机上下载编译源码. 之前下源码时,有了解一些Androi ...

  4. [Android] repo 下载Android源码(国内镜像)

    reference : http://blog.csdn.net/shenlan18446744/article/details/51490560 repo 下载Android源码(国内镜像) 下载r ...

  5. 转:Windows下载Android源码

    原文来自于:http://blog.csdn.net/hlf48641715/article/details/7188450 下载msysgit,安装 官方下载:http://code.google. ...

  6. (国内)完美下载Android源码Ubuntu版

    今天写的文章莫名奇妙的没了,所以再重新写一篇. 首先,为了方便起见,我已经将系统更换成里Ubuntu,因为官方推荐使用这个Linux发行版.先来一张系统的截图: Ubuntu的版本是16.04(推荐用 ...

  7. 如何下载android源码与android内核源码

    首先,要分清楚,android的源代码和android的内核代码一般是分开的,要分别进行下载. 1.先下载android的源代码.(这里不包括android的内核代码)      下载最新的源代码,一 ...

  8. 安装ubuntu16虚拟机,下载android源码,配置编译环境

    Android 源码编译步骤: 我考虑了一下,目前电脑装了SSD,8G内存,使用虚拟机编译源码应该够用. 首先下载虚拟机软件,由于最近一直在使用virtualbox,感觉蛮不错了,下载地址: http ...

  9. 快速下载android源码

    众所周知的原因,android源码被墙了,还好国内有不少镜像,这里使用清华提供的镜像. 以下内容转自: https://wiki.tuna.tsinghua.edu.cn/MirrorUsage/an ...

随机推荐

  1. python(38):sys.argv,sys.argv.pop(),获取用户的外部输入,非指定

    见下面的例子(一): # /usr/bin/env python # coding=utf8 import os import requests import sys if __name__ == & ...

  2. 【消息】linux之消息队列

      1.机制 消息队列的运行方式与命名管道非常相似. 欲与其他进程通信的进程只需要将消息发送到消息队列中,目的进程就从消息队列中读取需要的消息. 2.源码 1)发送方 //msg_send.c #in ...

  3. Path-to-PegExp的使用

    下载: npm install path-to-regexp --save 引入: var pathToRegexp = require('path-to-regexp') 或者 import pat ...

  4. css样式实现左边的固定宽度和高度的图片或者div跟随右边高度不固定的文字或者div垂直居中(文字高度超过图片,图片跟随文字居中,反之文字跟随图片居中非table实现)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. java中常用的16个工具类

    1. org.apache.commons.io.IOUtils:处理io流的相关操作 closeQuietly ( ) toString ( ) copy ( ) toByteArray ( ) w ...

  6. 解决java.io.IOException: Cannot run program "javac"问题,并设置jdk版本

    原因:没有配置java路径 解决方法:设置java_home路径 设置jdk版本是10的方法:在sbt文件中添加一行: javacOptions := Seq(") 然后重新执行命令:sbt ...

  7. Mongo分片集群脚本

    bash大法好啊,一键玩mongo. 我的mongo版本是:MongoDB shell version v4.0.2 这里准备为大家献上Mongo创建分片和可复制集的脚本,以及在部署的时候踩的坑. 分 ...

  8. C语言 · 十进制数转八进制数

    算法训练 十进制数转八进制数   时间限制:1.0s   内存限制:512.0MB      编写函数把一个十进制数输出其对应的八进制数. 样例输入 9274 样例输出 22072   #includ ...

  9. busybox tar 命令支持 tar.gz

    原始的 busybox 里面的 tar 命令不支持 tar.gz 解压 在 busybox-menuconfig 里面加入 下面的选项即可

  10. sqoop 常见错误以及处理方式

    Oracle: Connection Reset Errors 错误代码 // :: INFO mapred.JobClient: Task Id : attempt_201105261333_000 ...