【Android错误笔记】URLConnection解析URL的UnknownHostException异常解决办法

本来想好好写一篇关于使用AsycnTask异步任务的学习总结的时候,本来大致都快写完了

但是最后面却出现了问题,ImageView控件无法获取解析获得的网络图片

 

一开始以为是URL的问题,但是经过测试在浏览器打的开,所以排除了这个问题

后来怀疑是否我没有在AndroidManifest.xml中加入访问网络的权限,经过再三确认,也不是权限的问题

 

<uses-permission android:name="android.permission.INTERNET" />

 

同时我发现logcat里面既没有报错误,也没有报异常,这就很尴尬了,当我以为学习AsycnTask异步任务正入高潮的时候竟然遇到了一个这样的问题

这也太打击我的信心了吧,然后我就开启了DegBug模式,发现

 

URL myurl = new URL(url);
connection=myurl.openConnection();
connection.connect();
is=connection.getInputStream();	

第四句的时候会被我的Try catch捕获到IO异常,但是不知道为什么不报,所以我就在捕获异常把异常加入Log,看看究竟是怎么回事

 

 

catch (IOException e) {
				Log.i("info", "IOException:"+e.toString());
				e.printStackTrace();
			}

终于,异常出来了。竟然是无法解析这个地址,这就郁闷啦,我明明就在浏览器测试过,也确定过没有权限问题
IOException:java.net.UnknownHostException: Unable to resolve host "image.sinajs.cn": No address associated with hostname

 

然后我就根据这个异常百度、谷歌

结果发现很多答案,什么DNS、权限各种等等

比如这个博客的总结

这只是其中之一

但是他们都没有解决我的问题,所以在我决定不理会了,趁着放假出去浪几天。

当然,在那个时候,我就想如果当我解决了这个问题的时候,我一定要写一篇博客,记录下来,所以你们就看到了这个博文啦


最后面,还是解决了这个问题,只是有一点点的小无语

问题竟然是我的genymotion安卓虚拟机无法上网微笑,我之前竟然没有测试过这个问题,真的,很尴尬。

现在我们就来解决,首先打开android虚拟机,打开设置,点击wlan,再点击wiredSSD,让它连接到网络

然后你再运行安卓工程。你就会发现

这个困扰了快一天的问题已经解决了微笑,网络图片完美显示~~

 


 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值