android 获取http网络图片保存png
1、android 获取网络图片的方式很多,普通网络通信的方式都可以用在获取网络图片上。
android http获取数据常用的方式:
1、Apache接口(HttpClient)
2、标准Java接口(HttpURLConnection)
3、Ksoap接口
其中HttpClient、 HttpURLConnection、都有对应的get,post方式。ksoap是用自己对应的一套接口主要针对webservice
2、遇到的获取图片的方式有几种:直接从url链接地址获取图片,从webservice上获取图片的字符数组。
很典型的以下链接就有这两种方式
http://webservice.webxml.com.cn/WebServices/ValidateCodeWebService.asmx
2.1、直接获取图片
2.1.1 HttpClient get
2.1.2 httpURLConnection get
note: 因为项目需要保存为本地图片,所以直接在发给主线程的时候转换为bitmap的格式,并且强调下数据量大的时候一般也是以流的形式处理获取数据
2.2 获取图片字符数组。参看http://webservice.webxml.com.cn/WebServices/ValidateCodeWebService.asmx 中的mallValidateByte 方法
头部有:<base64Binary xmlns="http://WebXml.com.cn/">
iVBORw0KGgoAAAANSUhEUg -------
尾部:</base64Binary>
所以还不能直接取出这些数据来生成图片,我就这么傻的认为获取的内容就是图片流,后来查了蛮多材料,才反应过来,这个头尾的意思是
note:
android自带64解包 import android.util.Base64;
3、关于
imageIView的几种界面填充方式参见: scaleType
4、存储bmp于本地png