使用Intent调用系统的拍照功能时,Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
,并用onActivityResult方法中的data得到的bitmap,实际是被压缩过的。
为了得到原始图片(未被压缩),给intent添加intent.putExtra(MediaStore.EXTRA_OUTPUT,uri)
属性,这种方式的过程就是将拍摄的图片存储到uri路径中,而onActivityResult只是负责显示照片,也就是说提前确定存储的路径。
btnPhoto.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
File out = new File(getPhotopath());
Uri uri = Uri.fromFile(out);
intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
startActivityForResult(intent, SELECT_CAMER);
}
});
protected String getPhotopath() {
String path = Environment.getExternalStorageDirectory()+"/my/"
File file =