android 拍照注意问题

 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

         startActivityForResult(intent, reqCode);//reqCode是返回的code。

         可是在有些手机会在protected void onActivityResult(int requestCode, int resultCode, Intent data)里返回的data为空,这时候我们就要想一些办法来攻克了,这个是手机问题。


我们要设置系统相机拍摄照片完毕后图片文件存放
intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);



完整代码例如以下:

String path="";


Intent intent = new Intent();
// 指定开启系统相机的Action
intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE);
intent.addCategory(Intent.CATEGORY_DEFAULT);


File file = new File(constant.CACHE_PATH, String.valueOf(System
.currentTimeMillis()) + ".jpg");
if (file.exists()) {
file.delete();
}
// 把文件地址转换成Uri格式
Uri uri = Uri.fromFile(file);


path = file.getPath();
// 设置系统相机拍摄照片完毕后图片文件的存放地址
intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);


startActivityForResult(intent, 100);


protected void onActivityResult(int requestCode, int resultCode, Intent data) {


if (requestCode == 100 && resultCode == RESULT_OK) {



super.onActivityResult(requestCode, resultCode, data);


imageLoader.displayImage("file://" + path, iv_logo, options);


}
}

posted @ 2014-11-12 20:56  mfrbuaa  阅读(107)  评论(0编辑  收藏  举报