曲线救国,解决Mac系统下,Android sdk下载失败的问题
Mac下翻_墙的问题
话说GFW屏蔽谷歌已经有一阵子了,最近打算在Mac系统下折腾个Android应用,备好了IDE,只欠SDK,无奈下载时因为GFW的缘故,总是失败,我心痛哉!
由于本人偏爱Mac系统,于是便开始折腾Mac下的翻_墙问题,试过Break Wall,鱼摆摆,GoAgent,居然没有一个好用的!在公司办公的时候使用的都是Windows系统,需要翻_墙的时候,我都用自(he)由(xie)门这个东东,简单好使,实乃翻_墙神器也,可惜没有Mac的版本,这可咋整??????(博客园居然屏蔽\自\由\门这个关键字,⊙﹏⊙b汗)
家里2台电脑,一台Mac,一台Windows(我的游戏机),心想,要不Windows翻_墙,然后Mac接入Windows进行翻_墙不就行了。
于是,赶紧打开了Windows下的自(he)由(xie)门:

自(he)由(xie)门在本地开通了8580用作代理翻_墙端口,通过telnet 192.168.1.240 8580测试我windows的端口情况,发现不通,看了自(he)由(xie)门留了一手,监听ip是127.0.0.1,也就是只能通过127.0.0.1:8580去使用端口。

看来Mac直接访问Windows的自(he)由(xie)门代理是不行了。
开发Socket代理,解决Mac不能访问Windows自(he)由(xie)门代理的问题
心想,既然你自(he)由(xie)门只能通过127.0.0.1访问,那我何不开发个socket代理,对外开放一个端口,然后将端口的数据直接转发到8580上,这样应该就能解决Mac不能访问Windows自(he)由(xie)门代理的问题了。
嗯,思路不错,那就开搞一个吧,大晚上的时间有限,我就简单的用Nodejs开发了一个socket代理程序,话说用Nodejs开发网络应用这是超爽啊,socket代理代码如下:
var net = require('net');
var server = net.createServer(function(c) { //'connection' listener
console.log(c.remoteAddress);
// 暂停socket的数据处理
c.pause();
var client = net.connect({host:'127.0.0.1', port: 8580},
function() { //'connect' listener
// 连上自(he)由(xie)门代理了,可以去处理socket数据了
c.resume();
console.log('connected to proxy');
});
// 将过来的数据发给自(he)由(xie)门,然后将自(he)由(xie)门回过来的数据,原封不动的转发出去
c.pipe(client);
});
server.listen(8124, function() { //'listening' listener
console.log('server bound');
});
process.on('uncaughtException', function(err) {
console.log('Caught exception: ' + err);
});
Socket代理的运行效果如下:

Mac下配置http代理,访问Windows的自(he)由(xie)门,进行翻_墙
进入Mac,打开Android Sdk Manager,系统菜单中选择,Preferences,如下如:

然后设置Http代理服务器和端口信息,如下如:

注意:上面的192.168.1.240就是我的Windows电脑的ip,8124端口是socket代理的端口哦,它负责把Mac过来的http请求直接丢给自(he)由(xie)门,这样就可以翻_墙下载了。
最终解决了Mac下Android SDK下载失败的问题
看看下载效果吧:

嗯,搞定android sdk了,关机,睡觉觉!
曲线救国,解决Mac系统下,Android sdk下载失败的问题的更多相关文章
- Android SDK下载失败的解决方法
Android SDK下载失败的解决方法 图1 在下载过程中,Android SDK Manager Log中出现下面出错信息: Preparing toinstall archives Downlo ...
- win10环境下Android SDK下载安装及配置教程
最近在配置Android环境时,发现网上许多教程都是在win7版本下进行配置的且存在许多问题,按照流程无法正确配置环境,因此我在收集网上资料及亲自配置成功的情况下,写出此文章.如有无法配置成功的话,欢 ...
- mac系统下android studio创建手机模拟器
打开android studio,点击右上角的模拟器图标,打开“Android Virtual Device Manager” 窗口,如下图 点击“Create Virtual Device”,在 ...
- Mac系统下Android生成keystore
首先打开终端(在搜索里面搜索Te即可出来) 然后输入 cd /Library/Java/Home/bin/ 然后这步很关键,由于我们用的是当前用户,所以没有最高权限,不能在Library文件夹下生成 ...
- 解决Ubuntu系统下 mysql 远程连接失败的问题 ERROR 2003 (HY000): Can't connect to MySQL server on 'xxx.xxx.xx.xx' (110)
如果远程连不上mysql.cnf 里面也修改了:bind注销掉了127.0.0.1 等所有的 但是telnet xxx.xxx.xx.xx 3306 端口 不通:那么 就是防火墙的问题了 1.修改Ub ...
- Mac系统下编译支持Android平台的最新X264编码器
Mac系统下编译支持Android平台的最新X264编码器 原文来自 http://www.mingjianhua.com,转载请注明出处 1.首先去官网下载最新的x264源代码,解压到任意目录 ht ...
- Android SDK下载和更新失败的如何解决
一.scenario: 在部署Appium环境搭建时,安装SDK Manager.exe,遇到Android SDK下载更新失败. 报错信息如下图: Failed to fetch URL https ...
- (转载)Mac系统下利用ADB命令连接android手机并进行文件操作
Mac系统下利用ADB命令连接android手机并进行文件操作 标签: Mac adb android 2016-03-14 10:09 5470人阅读 评论(1) 收藏 举报 分类: Androi ...
- Mac系统cocos2dx + android 开发环境配置
Mac系统cocos2dx + android 开发环境配置 /****************************************************** 这遍文章主要转载自:htt ...
随机推荐
- word - 如何让 图片任意移动
选中图片, 设置图片的自动换行 为四周环绕型
- linux 压缩文件的命令总结
Linux压缩文件的读取 *.Z compress 程序压缩的档案: *.bz2 bzip2 程序压缩的档案: *.gz gzip 程序压缩的档案: *.tar ...
- 【crunch bang】tint2配置2
# Tint2 config file # Background definitions # ID 1 rounded = 0 border_width = 0 background_color = ...
- ReportingService 通过RowNumber函数获取行号和生成隔行变色样式
以前一直没有搞明白SSRS里面的RowNumber函数到底该怎么用,所以一直没有很好的办法在SSRS中的表格上实现隔行变色的样式,实现隔行变色的关键就是获取表格中每一行的行号.在最近了解了下这个函数, ...
- 【SPFA】 最短路计数
最短路计数 [问题描述] 给出一个N个顶点M条边的无向无权图,顶点编号为1-N.问从顶点1开始,到其他每个点的最短路有几条. [输入格式] 输入第一行包含2个正整数N,M,为图的顶点数与边数. ...
- OpenStack 多台计算节点时的问题
Contents [hide] 1 前言 2 bug 3 解决方法 4 网络问题 前言 添加一台计算节点后无法创建虚拟机.在调度层就错误: bug https://review.openstack.o ...
- 如何在图像处理工具包ImagXpress中对图像进行捕捉、复制和粘贴
如何在在ImagXpress中进行图像的捕捉. 复制和粘贴呢?下面详细来看一下,在多种情况下,图和实现这些操作. 捕捉屏幕图像 捕捉通过ImageXView窗口绑定的屏幕范围,以及保存到一个Image ...
- android 项目学习随笔十二(ListView加脚布局)
1.ListView加脚布局 头布局initHeaderView,在onTouchEvent事件中进行显示隐藏头布局切换 脚布局initFooterView,实现接口OnScrollListener, ...
- python使用装饰器捕获异常
可以编写一个通用的捕获异常的装饰器, 当程序发生异常时可以继续执行后续动作. 尤其适合于使用大量断言的验证性程序. 装饰器的实现原理使用了回调技术. 如下所示, robust 是一个装饰器. 当在普通 ...
- MySql的Delete、Truncate、Drop分析
MySql的Delete.Truncate.Drop分析 相同点: truncate 和不带 where 子句的 delete,以及 drop 都会删除表内的数据 不同点 1. truncate 和 ...