`
mmdev
  • 浏览: 12845365 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

解决下载Android源码时遇到的问题

 
阅读更多

转自:http://blog.csdn.net/thl789/article/details/7524232

本文解决公用IP(外网IP有限,经常发生在公司网络环境或虚拟机上)的机器下载Android源代码遇到的问题。

注意本文只针对当前从android.googlesource.com下载源码时遇到的问题,因为网络和后续Android源码维护升级等因素,有时效性,并不能保证以后一定还起作用。


利用五一假期期间,用家里的网络要把Android2.3,4.0都下载下来。但操作起来还真有遇到了问题。
之前Android的代码是在Linux kernel(android.git.kernel.org)管理,被Kernel踢出来之后,Android源码现在直接由Google(android.googlesource.com)管理。
用repo/git下载源码时,执行

$repoinit-uhttps://android.googlesource.com/platform/manifest-bandroid-4.0.4_r1.2
报错:

    Exception in thread Thread-3:  
    Traceback (most recent call last):  
      File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner  
      self.run()  
      File "/usr/lib/python2.6/threading.py", line 484, in run  
      self.__target(*self.__args, **self.__kwargs)  
      File "/home/haili/android-4.0.4_r1.2/.repo/repo/subcmds/sync.py", line 200, in _FetchHelper  
      clone_bundle=not opt.no_clone_bundle)  
      File "/home/haili/android-4.0.4_r1.2/.repo/repo/project.py", line 978, in Sync_NetworkHalf  
      and self._ApplyCloneBundle(initial=is_new, quiet=quiet):  
      File "/home/haili/android-4.0.4_r1.2/.repo/repo/project.py", line 1519, in _ApplyCloneBundle  
      exist_dst = self._FetchBundle(bundle_url, bundle_tmp, bundle_dst, quiet)  
      File "/home/haili/android-4.0.4_r1.2/.repo/repo/project.py", line 1583, in _FetchBundle  
      raise DownloadError('%s: %s ' % (req.get_host(), str(e)))  
    DownloadError: android.googlesource.com: <urlopen error [Errno 110] Connection timed out>    
    ...  

看这出错很莫名,Python是正确安装了的,版本也是要求的。其实官网(http://source.android.com/source/downloading.html)有段说明,如果认真执行就可解决。

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

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

    machine android.googlesource.com login git-<userName>.gmail.com password <password>  
    machine android-review.googlesource.com login git-<userName>.gmail.com password <password>  

的信息。

3. 把上面那段信息(<userName>和<password>用自己得到的真实信息)追加到~/.netrc文件结尾;

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

然后按照官网描述的正常步骤操作,即可拉下Android源码。

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

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

分享到:
评论

相关推荐

    解决公用IP下载Android源码时遇到的问题

    在公司网络内或者用虚拟机下载的过程 repo init -u https://android.googlesource.com/platform/manifest -b android-2.3.3_r1

    安卓期末大作业基于Android的在线商城源码.zip

    此外,还可以锻炼用户的团队协作能力,因为在开发过程中需要与团队成员紧密合作,共同解决遇到的问题。 总之,该基于Android的在线商城大作业是一份非常有价值的学习资源,不仅提供了必要的指导和支持,还可以帮助...

    Android例子源码解决多线程读写sqlite数据库锁定问题

    如果多线程同时读写(这里的指不同的线程用使用的是不同的Helper实例),后面的就会遇到android.database.sqlite.SQLiteException: database is locked这样的异常。对于这样的问题,解决的办法就是keep single ...

    毕业设计源码 文档:基于Android的音乐播放器.rar

    同时给出了详细的系统设计过程、部分界面图及主要功能运行流程图,本文还对调试过程中遇到的问题和解决方法进行了详细的讨论。  播放器实现的功能主要有:本地播放、暂停、上一曲、下一曲、歌曲下载、歌曲搜索、...

    基于Android的在线商城大作业(源码+部署说明+系统介绍+源码解释).zip

    此外,还可以锻炼用户的团队协作能力,因为在开发过程中需要与团队成员紧密合作,共同解决遇到的问题。 总之,该基于Android的在线商城大作业是一份非常有价值的学习资源,不仅提供了必要的指导和支持,还可以帮助...

    基于Android指南针作业(源码+部署说明+系统文档+源码解释).zip

    此外,还可以锻炼学生的团队协作能力,因为在完成作业的过程中,需要与同学合作,共同解决遇到的问题。 总之,该作业是一份非常有价值的学习资源,不仅提供了必要的指导和支持,还可以帮助学生快速入门Android应用...

    百度地图Demo源码(开发环境Android Studio)

    自己根据百度开发者平台写的一个demo,实现一些简单地图显示,以解决新手在环境配置上遇到问题而无法继续进行下去

    【源码】小学生口算练习宝

    之前上传的资料没看过评论,很多朋友遇到了问题没有及时发现沟通解决,这次末尾有联系方式,有问题的朋友可以联系交流。 详细信息如下: 一、附件为小学生口算练习小程序,为自家宝贝设计的,自用之余拿来大家分享...

    java班级管理源码-Android-Interview:Android面试宝典

    java班级管理源码 GitHub 托管 GitBook 在线阅读 在线阅读,PDF、ePub、Mobi电子书下载 内容:JavaSE 基础,JavaSE 高级,Android 基础,Android ...jar包冲突](开发遇到的问题/手把手教你如何解决as jar包冲突

    Android代码-android_design_patterns_analysis

    设计模式已经成为开发人员最重要的技能之一,它们能够让你优雅、简单、灵活地解决开发中遇到的设计难题,让你的软件系统具有更好的可扩展性、灵活性,在特定场景之下让你的软件系统实现拥抱变化。但设计模式运用在...

    Android-Universal-Image-Loader源码和jar包

    Android开发中我们会经常遇到图片过多或操作不当造成OOM异常,有时虽然是解决了这个问题但却会影响程序的运行效率,例如:当用户在快速滑动滚动条的过程中,我们程序在仍在艰难的加载服务器端的图片,这样给用户造成...

    Android平台可以单独打开多个摄像头的apk

    在安装Camera2Basic app的时候,可能会遇到“Failure [INSTALL_FAILED_TEST_ONLY: installPackageLI]” 错误, 此时 通过adb install -t 的方式安装,可以解决问题。 更多信息可以参考链接:...

    深入理解Android:卷I--详细书签版

     本书是在分析Android源码的基础上展开的,而源码文件所在的路径一般都很长,例如,文件AndroidRuntime.cpp的真实路径就是framework/base/core/jni/AndroidRuntime.cpp。为了书 写方便起见,我们在各章节开头把该...

    Android TextView显示HTML 图片居中且不缩放

    Android TextView可以支持简单的Html标签,但大部分Html标签是不支持的或者处理得不太好的,其中Img标签就是如此。如果在html中使用img标签的话就会遇到以下... 笔者通过参考大量资料和源码,解决了上述3个问题。

    ADW_Launcher源码和配置过程

    由于在Android源码中,很多方法、成员、类、包都被打上@hide标签,这些成员在SDK中没有公开,以至于在编译Launcher源码时最常遇到的类android.view.View的成员mScrollX无法访问。 下面说说如何解决这个问题。 1,...

    Android技术内幕.系统卷.PDF

    旨在通过对Android系统源代码的全面分析来帮助开发者加深对Android系统架构设计和实现原理的认识,从而帮助他们解决开发中遇到的更加复杂的问题。《Android技术内幕:系统卷》分为两卷,系统卷主要分析了Linux内核层...

    Android项目源码发送加密短信解密本地短信.zip

    遇到的问题: 1、发送短信字符过长会导致发送失败 解决方法:设置发送每条短信为70个字以内。 原理:每条短信限制160字符以内,每个汉字是2个字符。平时我们发送短信几乎不限长度,是因为一旦超过了单条短信的...

    Android移动应用开发从入门到精通[PDF+源代码]

     本书为了便于读者能最大程度地掌握Android应用开发,我们介绍了大量有关Android系统的基础知识,并且将平时开发过程中遇到的问题一一注明,避免读者朋友们走弯路。  详细阐述Android每一个控件的使用本书讲解了...

    Android与其他系统间DES加密解密的处理经验

    我在开发Android与C#程序之间的数据交互时也遇到了这个问题,现将处理经验与大家分享一下。 C#系统采用DES加密字符串,Android用DES解密就是不成功,从网上搜了许多源码都不能用,深入研究加密流程及算法是没有时间...

Global site tag (gtag.js) - Google Analytics