解决Android SDK Manager更新(一个更新Host的程序的原理实现和源码)
<ignore_js_op>
![]()
同学遇到了更新Android SDK的问题,而且Goagent现在也无法用来更新。
就想到了用替代Host的方法,添加可用的谷歌地址来实现更新。
更新Host文件之后的功能:访问谷歌,更新Android SDK原理分析:
1. github上的一个hosts项目(https://github.com/racaljk/hosts),获取到最新的Host的文件
2. 获取hosts的文本网页(https://raw.githubusercontent.com/racaljk/hosts/master/hosts)
3. 把提取这个网页的内容,并且替换在C:\Windows\System32\drivers\etc\hosts的文件中
C#中得到网页内容的函数:
private string GetGeneralContent(string strUrl)
{
string strMsg = string.Empty;
try
{
WebRequest request = WebRequest.Create(strUrl);
WebResponse response = request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("gb2312")); strMsg = reader.ReadToEnd(); reader.Close();
reader.Dispose();
response.Close();
}
catch
{ }
return strMsg;
}按钮点击事件:
private void button1_Click(object sender, EventArgs e)
{
string add = GetGeneralContent("[url=https://raw.githubusercontent.com/racaljk/hosts/master/hosts"]https://raw.githubusercontent.com/racaljk/hosts/master/hosts"[/url]);
if (add != "")
{
//string str2 = File.ReadAllText(@"C:\Windows\System32\drivers\etc\hosts", Encoding.ASCII);
//str2 = str2 + '\n' + add;
string str2 = add;
File.WriteAllText(@"C:\Windows\System32\drivers\etc\hosts", str2, Encoding.ASCII);
MessageBox.Show( "修改成功" ,"xiaoz 提示:");
}
else {
MessageBox.Show("修改失败", "xiaoz 提示:");
}
}
软件运行图(需要管理员权限):
Android SDK更新图:
软件需要管理员权限
软件需要管理员权限
软件需要管理员权限
(.net framework 4.0 环境)
软件下载地址:http://pan.baidu.com/s/1i32KqJb 密码:szo9
源码下载地址:http://pan.baidu.com/s/1eQ2kw3g 密码:7er9
解决Android SDK Manager更新(一个更新Host的程序的原理实现和源码)的更多相关文章
- 解决Android SDK Manager更新、下载速度慢
hosts文件里面原来的内容不做修改,只是添加内容 方法/步骤 先看看如何加快更新速度,再说如何更新. 首先更新host文件,如图,打开目录 C:\Windows\System32\drivers\e ...
- 解决Android SDK Manager 更新、下载慢以及待安装包列表不显示
参考地址:http://www.cnblogs.com/tc310/archive/2012/12/21/2828450.html 问题描述: Android SDK Manager 无法下载更新,或 ...
- 完美解决Android SDK Manager无法更新
由于国内的各种屏蔽现在Android SDK Manager出现无法更新或更新太慢,如下方法可完美解决此问题 1. 打开..\Android\sdk\SDK Manager.exe 2.
- 解决Android SDK Manager 更新下载慢以及待安装包列表不显示
问题描述: Android SDK Manager 无法下载更新,或者更新速度超慢,或者待安装包列表不显示 解决方法: 第一步:修改hosts文件 修改后的hosts 文件内容为: 127.0.0.1 ...
- android SDK manager 无法获取更新版本的解决办法
http://mirrors.neusoft.edu.cn/eclipse/releases/luna/打开这个网址就可以看到adt的详细信息: http://developer.android.c ...
- (转)解决Android SDK Manager无法更新或下载太慢问题
原帖地址:http://blog.csdn.net/exlsunshine/article/details/22208857 天朝的网络...哎~真是无语...还好最近装了谷歌的chrome浏览器+红 ...
- [转] Android SDK manager 无法获取更新版本列表
打开这个网址(LINK)就可以看到adt的详细信息. 或者直接在你的eclipse的Help > Install New Software里面add,地址直接输入 https://dl-ss ...
- Android SDK Manager国内无法更新的解决方案
万里长城永不倒,千里黄河水滔滔.算了跑题了. 但还是要吐槽这下这个万里长城,感谢 方滨兴 叫兽 给我们净化了互联网,靠!什么&!@#¥ 此处略去一万字. 现在由于GWF,google基本和咱们 ...
- (转)Android SDK Manager国内无法更新的解决方案
转载地址:http://www.linuxidc.com/Linux/2015-01/111958.htm 现在由于GWF,google基本和咱们说咱见了,就给现在在做Android 或者想学习An ...
随机推荐
- linux 定时任务计划
crond: unrecognized service 无crond解决办法 安装计划任务:yum -y install vixie-cron
- oracle学习----行级锁的理解
通过实验来理解行级锁的发生 1.创建需要的表 SQL> conn / as sysdba已连接.SQL> create table dept as select * from scott. ...
- Android(java)学习笔记150:为什么局部内部类只能访问外部类中的 final型的常量
为什么匿名内部类参数必须为final类型: 1) 从程序设计语言的理论上:局部内部类(即:定义在方法中的内部类),由于本身就是在方法内部(可出现在形式参数定义处或者方法体处),因而访问方法中的局部变 ...
- ios开发时候,出现A valid provisioning profile for this executable was not found 错误
今天一大早起来,做ios的开发,发现了一下错误:A valid provisioning profile for this executable was not found 错误的产生是在开发模式下产 ...
- Android_Broadcast
/** * Broadcast(广播):是一种广泛运用的在应用程序之间传输信息的机制 * * BroadcastReceiver(广播接收者) * 是对发送出来的广播进行过滤接收并响应的一类组件,它就 ...
- 集合练习——Map部分
练习: 输入诗的名称查询出诗的内容,当输入exit时,退出程序,“春晓”,“静夜思”,“鹅”. package CollectionPart; public class Poetry { privat ...
- how to forget about delta cycles for RTL design
A delta cycle is a VHDL construct used to makeVHDL, a concurrent language, executable on asequential ...
- (转载)重温SQL——行转列,列转行
原文地址:http://www.cnblogs.com/kerrycode/archive/2010/07/28/1786547.html 行转列,列转行是我们在开发过程中经常碰到的问题.行转列一般通 ...
- wamp配置虚拟主机
================================================================= 来源参考一:http://wenku.baidu.com/link? ...
- WebView组件的应用
1.什么是WebView? WebView(网络视图)能加载显示网页,可以将其视为一个浏览器,它使用了WebKit渲染引擎加载显示网页. <?xml version="1.0" ...