在android 4.0 http请求时,发现的一个问题

在最近中项目中,负责了一个图片下载的功能。开发后,在测试时 发现在2.x或3.x系统中能正常下载图片。但在4.x的系统上,一直报找不到下载地址的异常。这个问题很是奇怪,代码上没有任何错误的地址。
    后来通过截取http 头信息发现,4.0上总是以post的方式去请求一个图片下载地址。但我明明setMethod 给参数是 get。经过用排除法,才发现是 setDoOutput(true) 这个方法导致 一直是post的请求。 可能大家编码习惯都在初始化connection 时把这个属性设置成true 。但在android 4.x系统中,底层的网络代码,只通过setDoOutput 是false 还是ture ,去判断是get还是post请求。所以以后大家在初始化conection 时,setDoOutput当需要post 才设置成true。否则,也会出现我遇到的这个问题,出现找不到地址的异常。

猜你喜欢

转载自darar.iteye.com/blog/1788710