reference : http://blog.csdn.net/shenlan18446744/article/details/51490560

repo 下载Android源码(国内镜像)

  1. 下载repo 
    网上给的repo大多是国外的网址,考虑到墙的存在,给不少同学增加了一定的困难,这次我就将repo放在七牛云存储上面供大家下载,下载地址repo
  2. 将repo添加进环境变量 
    下载后将repo复制到/usr/bin目录下,之所以复制到这个目录是因为这个目录本身就在系统环境变量里面,这样的话就省去了配置repo环境变量的问题,接着给普通用户赋对这个文件的执行权限

    1. chmod a+x /usr/bin/repo
  3. 测试repo是否安装成功 
    接着在其它非系统环境变量目录执行repo命令,看是否有这样的输出

    1. error: repo is not installed. Use "repo init" to install it here.

    如果有这样的输出就代表repo安装成功。

  4. 修改repo 
    将repo加进系统环境变量之后还要修改一下文件的一下内容,因为默认的repo文件的下载源是googlesource.com,然而这个网址是在墙外的无法访问,因此我们就要把下载源代码的地址改为国内的,国内的下载Android 源码的镜像有很多,常见的有 tsinghua/omap/,这里我们使用清华的,因为清华就在笔者附近从网络链接速度来说都相当快。 
    修改repo文件众的REPO_URL 为

    1. REPO_URL = 'https://aosp.tuna.tsinghua.edu.cn/git-repo'

    由于是repo在/usr/bin目录下因此在编辑repo文件的时候要在前面加上sudo

    1. sudo vim /usr/bin/repo

    这是我修改好的repo文件大家可以直接使用,在使用前记得重命名成repo就可以了,repo_tsinghua下载地址

  5. 下载源码 
    接着开始下载Android 源码,这里我在自己的家目录创建了一个Android_Source 文件夹来存储Android源码。执行下列命令来初始化仓库

    1. repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-5.1.1_r3

    初始化仓库后,会在Androi_Source 目录下创建一个.repo的隐藏目录,进入这个目录下会发现几个文件。其中最重要的是manifest.xml,这个文件是个链接文件,这个链接指向manifets目录下的default.xml,这个清单文件描述了Android 源代码下所有的project,从底层到应用层,但凡是Android 系统众用到的这里面都有,比如我们知道的在Android原生系统众的联系人应用在这个文件中对应着这两个project

    1. <project path="packages/apps/Contacts" name="platform/packages/apps/Contacts" />
    2. <project path="packages/apps/ContactsCommon" name="platform/packages/apps/ContactsCommon" />

    接着在Android_Source目录里下执行下列命令,就开始从清华镜像下载Android源码,我在实际下载过程中出现过网络情况不太好的时候,这时候下载会中断,这时重新执行改命令就可以了。repo会检测之前下载好的是否完成,然后接着从上一次中断处开始下载。就这样就基本上完成了Andorid源码的下载,下载完成后大概31G左右,如果不到31G的基本上就是没下载完,重新执行该命令即可。

    1. repo sync

    查询下载完成后的文件大小: 
     
    那到底什么时候是下载完成的状态呢,下载完成后会有这样的提示:

    1. Fetching projects: 100% (486/486), done.

    图例: 
     
    PS. 有的同学在执行repo init命令的时候可能会出现这样的提示:

    1. error.GitError: manifests var:
    2. *** Please tell me who you are.
    3. Run
    4. git config --global user.email "you@example.com"
    5. git config --global user.name "Your Name"
    6. to set your account's default identity.
    7. Omit --global to set the identity only in this repository.

    这个提示已经很明显了,大概意思就是git不知道你是谁,需要执行下这两个命令告诉git就可以了。

    1. git config --global user.email "you@example.com"
    2. git config --global user.name "Your Name"

[Android] repo 下载Android源码(国内镜像)的更多相关文章

  1. Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程

    Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程   在新的Ubuntu 64位系统下去编译早期的安卓源码是会出现很多问题的,因为64位系统在安装完成后,很多32位的兼容 ...

  2. 【转】Ubuntu 14.04.3上配置并成功编译Android 6.0 r1源码

    http://www.linuxidc.com/Linux/2016-01/127292.htm 终于成功把Android 6.0 r1源码的源码编译.先上图,这是在Ubuntu中运行的Android ...

  3. Android Studio 导入 AOSP 源码

    有了 AOSP 源码,接下来就是如何看了,可以直接文本看,可以用 Source Insight,我当然选择 Android Studio,Android Studio 是我熟悉且十分强大的工具.问题来 ...

  4. Android音乐播放器源码(歌词.均衡器.收藏.qq5.0菜单.通知)

    一款Android音乐播放器源码,基本功能都实现了 qq5.0菜单(歌词.均衡器.收藏.qq5.0菜单.通知) 只有向右滑动出现,菜单键和指定按钮都还没有添加. 源码下载:http://code.66 ...

  5. 一款非常简单的android音乐播放器源码分享给大家

    一款非常简单的android音乐播放器源码分享给大家,该应用虽然很小,大家常用的播放器功能基本实现了,可能有点还不够完善,大家也可以自己完善一下,源码在源码天堂那里已经有了,大家可以到那里下载学习吧. ...

  6. 编译Android 4.4.2源码

    在之前的文章中,和大家分享了在天朝下下载android 4.4.2源码的过程(详见下载android4.4.2源码全过程(附已下载的源码)),现在写下编译的笔记. 虽然在android doc中,有提 ...

  7. android 近百个源码项目【转】

    http://www.cnblogs.com/helloandroid/articles/2385358.html Android开发又将带来新一轮热潮,很多开发者都投入到这个浪潮中去了,创造了许许多 ...

  8. Android 自定义View及其在布局文件中的使用示例(三):结合Android 4.4.2_r1源码分析onMeasure过程

    转载请注明出处 http://www.cnblogs.com/crashmaker/p/3549365.html From crash_coder linguowu linguowu0622@gami ...

  9. android版猜拳游戏源码分享

    android版猜拳游戏源码分享安卓版猜拳游戏源码,该文件中带有安装测试包的,这个游戏源码比较简单的,现在有两个代码,一个自定义VIEW的,一个就是普通的imageView图片,游戏非常适合一些新手的 ...

随机推荐

  1. java.lang.NoClassDefFoundError: ognl/PropertyAccessor

    本篇对 Web 开发中,项目部署后.开启 Tomcat 服务器 Console 控制台报错 java.lang.NoClassDefFoundError: ognl/PropertyAccessor ...

  2. bzoj 1228 [SDOI2009]E&D

    sg表很好打,规律很不好找.... #include<bits/stdc++.h> #define LL long long #define fi first #define se sec ...

  3. 三 oracle 用户管理一

    一.创建用户概述:在oracle中要创建一个新的用户使用create user语句,一般是具有dba(数据库管理员)的权限才能使用.create user 用户名 identified by 密码; ...

  4. Numpy的简单用法

    Numpy的简单用法 import numpy as np 一.创建ndarray对象 列表转换成ndarray: >>> a = [1,2,3,4,5] >>> ...

  5. Bootstrap进阶四:jQuery插件详解

    一.模态对话框(Modal) 模态框经过了优化,更加灵活,以弹出对话框的形式出现,具有最小和最实用的功能集. 不支持同时打开多个模态框 千万不要在一个模态框上重叠另一个模态框.要想同时支持多个模态框, ...

  6. thinkphp5.0返回插入数据id

    添加数据后如果需要返回新增数据的自增主键,可以使用getLastInsID方法: Db::name('user')->insert($data); $userId = Db::name('use ...

  7. [js]变量与数据类型篇

    一.变量 在JavaScript中就用一个变量名表示变量,变量名是大小写英文.数字.$和_的组合,不能用数字开头.变量名也不能是JavaScript的关键字: 1.变量的声明 (1)var:申明一个变 ...

  8. PHP接入支付宝支付

    创建应用 使用支付宝账号登录开放平台创建应用,应用创建成功之后可以得到APPID等相关信息 接着需要设置RSA密钥,可以使用蚂蚁金服开放平台提供的生成工具,生成完密钥需在开放平台中填写. 代码接入 引 ...

  9. poi类包对比

  10. Python 学习经历分享

    如果说 Java 是亲儿子的话,那么 Python 应该就是干儿子了.看了一下所有关于 Python 的笔记,我发现原来我在 4 月份的时候就已经涉足 Python 了,但是到目前为止才真正算做出了一 ...