String stra = d.getResult().getImage();
try {
byte[] data=null;
data = stra.getBytes("UTF-8");
// 为UTF8编码
// 把二进制图片转成位图
Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0,
data.length,null);
image.setImageBitmap(bitmap);
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
data中有数据,bitmap为空
你的字节数据要先转成YUV
格式的设置好image
类型才可以调用decodeByteArray()
;改成这样
YuvImage yuvimage=new YuvImage(data, ImageFormat.NV21, 20,20, null); //20、20分别是图的宽度与高度
ByteArrayOutputStream baos = new ByteArrayOutputStream();
yuvimage.compressToJpeg(new Rect(0, 0,20, 20), 80, baos);//80--JPG图片的质量[0-100],100最高
byte[] jdata = baos.toByteArray();
bitmap = BitmapFactory.decodeByteArray(jdata, 0, jdata.length);
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。