照相机拍照
Intent intent = new Intent();intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE);// 照相机拍照// 需要说明一下,以下操作使用照相机拍照,// 拍照后的图片会存放在相册中的,这里使用的这种方式有一个好处就是获取的图片是拍照后的原图,// 如果不实用ContentValues存放照片路径的话,拍照后获取的图片为缩略图不清晰ContentValues values = new ContentValues();Uri photoUri = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);intent.putExtra(MediaStore.EXTRA_OUTPUT, photoUri);startActivityForResult(intent, RC_TAKE_PHOTO);
选择照片
public void choosePhoto() {if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) {startActivityForResult(new Intent(Intent.ACTION_GET_CONTENT).setType("image/*"),RC_CHOOSE_PHOTO);} else {Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);intent.addCategory(Intent.CATEGORY_OPENABLE);intent.setType("image/*");startActivityForResult(intent, RC_CHOOSE_PHOTO);}}
最后在onActivityResult方法中接收intent返回的URI
相册接收intent.getData();
相机的URI就是photoUri