调用系统照相机,返回的data经常为null。能成功生成图片,但是图片不能被图库识别,能在文件浏览器中看到。有的手机会过一段时间后被图库识别,有的手机根本不能够被图库识别。
解决办法,如果要获得图片,直接从文件路径中读取。
private static final int CAMERA = 10;
String picPath = Environment.getExternalStorageDirectory().toString()+"/DCIM/Camera/";
String picName=DateFormat.format("yyyyMMdd_hhmmss", Calendar.getInstance(Locale.CHINA))+".jpg";
Intent camera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
File file=new File(picPath,picName); // 把文件地址转换成Uri格式
Uri uri=Uri.fromFile(file);
camera.putExtra(MediaStore.EXTRA_OUTPUT, uri);
startActivityForResult(camera, CAMERA);
if(requestCode==GETPIC){
String picturePath=data.getStringExtra("picturePath");
listBit.add(BitmapFactory.decodeFile(picturePath));