A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 亚特兰蒂斯 高级黑马   /  2015-8-29 20:38  /  1870 人查看  /  1 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 亚特兰蒂斯 于 2015-8-29 20:46 编辑

因为某些奇怪的原因,国内访问 Android 镜像的时候总是会失败,导致更新 Android SDK 的时候非常困难,虽然国内有一个http://www.androiddevtools.cn/ 收集了很多 Android 开发相关的资源。
但是对于我本人而言,使用这里面提供的代理服务器的时候,速度还是慢的跟蜗牛一样。另外我使用的是中国电信的宽带,虽然购买了 VPN 但是速度还是很不理想,可能也跟 如何看待上海电信访问国外网站困难,并推出国际精品网、国际氮气瓶业务? 有些关系。
知乎上面也有一个相关的话题讨论 谷歌不能访问了 怎么构建安卓开发环境?
因此我开始考虑是否可以自己弄一个代理服务器,借助于百度网盘的CDN网络,提供更快的下载速度。
为了构建这个代理服务器,首先需要有资源。
我直接使用了百度网盘的离线下载功能,把 http://mirrors.neusoft.edu.cn/android/repository/ 的内容镜像了一次,这部分主要是人肉的工作,因为提交的 URL 多了之后,需要手工输入验证码,花费了大概2,3个小时的时间。
链接: http://pan.baidu.com/s/1mgGhdlm 密码: 526k
有了资源之后,就需要考虑如何通过代理服务器下载,代理服务器本质上就是一个 Web 服务器,当收到类似/android/repository/addons_list-1.xml 的请求之后,就从百度网盘里面下载所需要的资源。
要自动获取百度网盘中资源的下载地址,需要先人肉登录,然后得到 BDUSS 和 BAIDUID 这两个 Cookie。相信对于大部分同学来说,应该不是很大的问题,只需要在 Chrome Dev Tools 里面看看 Request Header 就能得到这部分数据了。
有了 BDUSS 和 BAIDUID 这两个 Cookie 之后,把上面的分享的内容转存到自己网盘的根目录,然后下载这部分的代码:
git clone https://github.com/leeight/baidu-cloud-mirror.git
cd baidu-cloud-mirror
npm install
DEBUG=* node main.js --bduss=$BDUSS --baiduid=$BAIDUID --port=8964
然后就可以通过 wget http://localhost:8964/android/repository/samples-22_r06.zip 测试下载速度了。
对于我的 100M 电信宽带来说,未开通了百度网盘会员之前,下载速度在 300K 左右,开通了之后,下载速度是 6M ~ 7M 左右。
[size=1.2]android-sdk-download-speed



1 个回复

倒序浏览
多谢分享!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马