zoukankan      html  css  js  c++  java
  • [Android] repo 下载Android源码(国内镜像)

    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.  
      

      图例: 
      Android 代码下载完成 
      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"
  • 相关阅读:
    使用插件和不使用插件实现select的框
    利用sshtunnel实现跳板机的效果[嵌套ssh实现]
    laravel中get()与 first()区别、collection与stdClass的区别
    Laravel 安全:避免 SQL 注入
    MAC 终端走代理服务器
    Python--Virtualenv简明教程(转载https://www.jianshu.com/p/08c657bd34f1)
    Charles 如何抓取https数据包
    爬虫出现Forbidden by robots.txt(转载 https://blog.csdn.net/zzk1995/article/details/51628205)
    Scrapy框架的学习(6.item介绍以及items的使用(提前定义好字段名))转载https://blog.csdn.net/wei18791957243/article/details/86259688
    python xpath
  • 原文地址:https://www.cnblogs.com/0616--ataozhijia/p/7574462.html
Copyright © 2011-2022 走看看