您的位置:首页 > 移动开发 > Android开发

Android调用系统自带的拍照功能出现Failure delivering result ResultInfo的问题

2012-06-01 17:07 609 查看
今天调用Android自带的拍照功能,调用之后根据返回的Intent获取照片,但是出现Failure
delivering result ResultInfo的错误。具体代码如下:
Intent getImageByCamera = new Intent();

getImageByCamera.setAction("android.media.action.IMAGE_CAPTURE");

xieWbActivity.startActivityForResult(getImageByCamera, 1);
获取照片代码如下:
super.onActivityResult(requestCode, resultCode, data);

Bundle extras = data.getExtras();

myBitmap = (Bitmap) extras.get("data");

经过跟踪发现,extras为空,但是data不为空。相同的代码我在另外一个手机上跑一点错误都没有,但是在自己的手机上就会出错,我的手机是刷的MIUI系统。后来通过跟踪,发现返回的data有两种方式,除了这种方式之外,还有一种方式是返回Uri,而不是返回bitmap。因此,可以对返回的数据作出判断,分别处理,这样就解决了。具体代码如下:
super.onActivityResult(requestCode, resultCode, data);

Bundle extras = data.getExtras();

if(null!=extras){

Log.i("bb","isNull:"+(null==extras));

myBitmap = (Bitmap) extras.get("data");

}else{

Uri uri = data.getData();

if (uri != null) {

myBitmap = BitmapFactory.decodeFile(uri.getPath());

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐