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

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

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

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

    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 为

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

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

    sudo vim /usr/bin/repo

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

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

    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

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

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

    repo sync

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

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

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

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

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

    git config --global user.email "you@example.com"
    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. 成为IT经理必备的十大能力 不只是技术!

    对于一个IT从业者,让你谋得工作的也许是技术能力,但有助于提升职业生涯的却是软技能.步步高升的人都是那些发表文章.在会议上积极发言以及关注客户的员工(程序员).与此同时,通常情况下,企业CIO或多或少 ...

  2. HDU - 1754 A - I Hate It 线段树

    I Hate It Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  3. 【原创】MySQL CPU %sys高的案例分析(一)

    [现象] 最近关注MySQL CPU告警的问题时,发现有一种场景,有一些服务器最近都较频繁的出现CPU告警,其中的现象是 SYS CPU占比较高. 下面的截图来源于“MySQL CPU报警”采集的文件 ...

  4. js中对同步和异步的理解

    你应该知道,javascript语言是一门“单线程”的语言,不像java语言,类继承Thread再来个thread.start就可以开辟一个线程,所以,javascript就像一条流水线,仅仅是一条流 ...

  5. sublime用浏览器打开html文件

    打开Preferences - 「Key Bindings - User」,添加此行: {"keys": ["ctrl+b"],"command&qu ...

  6. hdu 3397 线段树

    题意: Change operations:0 a b change all characters into '0's in [a , b]1 a b change all characters in ...

  7. hdu 4435 第37届ACM/ICPC天津现场赛E题

    转载请注明出处,谢谢http://blog.csdn.net/ACM_cxlove?viewmode=contents    by---cxlove 题目:给出N个城市,从1开始需要遍历所有点,选择一 ...

  8. SMACH专题(一)----安装与初探

    最近使用ROS进行任务(Task)执行,深切体会用传统的方法实现是极其繁杂的.比如人脸录入工作,包含人脸检测,识别,语音提示,运动控制,这些子部分基本都是通过订阅话题的回调函数中处理,之间的切换,如人 ...

  9. git命令行使用帮助

    克隆代码库 git clone git_project_url 提交代码 git commit -m 'commit messge'

  10. YS报警权限验证安全设计

    1.总体流程图:   备注: 1. 使用加时间戳的方式优点是可以不用对报警请求进行加密,也可以防止信令重放,缺点是每次都要去DAS获取新的签名.