一,调用webservice接口,传的参数是String类型的参数。需要把Bitmap转换为String类型。
byte[] arrayOfByte = CommUtil.Bitmap2Bytes(DangerPointSubmitActivity.this.mImageBitmap2);
bitmapStr= new String(Base64Utils.encode(arrayOfByte));
Bitmap2Bytes代码如下:
public static byte[] Bitmap2Bytes(Bitmap paramBitmap){
ByteArrayOutputStream localByteArrayOutputStream = new ByteArrayOutputStream();
paramBitmap.compress(Bitmap.CompressFormat.JPEG, 100, localByteArrayOutputStream);
return localByteArrayOutputStream.toByteArray();
}
服务器端收到String类型的数据,再转换为Bitmap。其中涉及到压缩比,不知道这个压缩比是什么。
二,服务器端上传图片的参数是File类型。
public File saveFile(Bitmap bm, String path) throws IOException {
File myCaptureFile = new File(path);
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(myCaptureFile));
bm.compress(Bitmap.CompressFormat.JPEG, 30, bos);
bos.flush();
bos.close();
return myCaptureFile;
}
压缩后把Bitmap转换为File类型。