// 相册:
Intent openFrame = new Intent(Intent.ACTION_GET_CONTENT);
openFrame.setType("image/*");
startActivityForResult(openFrame, requestCode);
// camera:
File file = new File(file_path);
file.mkdirs();
String fileName = file_name ;
Intent openCamera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
openCamera.putExtra(MediaStore.EXTRA_OUTPUT,Uri.fromFile(new File(file_path, file_name)));
startActivityForResult(openCamera,requestCode);
// onActivityResult
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
switch (requestCode) {
case photo:
Uri mSelectPic = data.getData();
mPicPath = getPicPathFromURI(mSelectPic, this);
break;
case Const.RESULT_CATCH_IAMGE:
String sdStatus = Environment.getExternalStorageState();
if (!sdStatus.equals(Environment.MEDIA_MOUNTED)) {
return;
}
break;
}
} }
public static String getPicPathFromURI(Uri uri, Context mContext) {
String[] mFilePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = mContext.getContentResolver().query(uri,
mFilePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndexOrThrow(mFilePathColumn[0]);
String mPicPath = cursor.getString(columnIndex);
cursor.close();
return mPicPath;
}