private final static int CAMERA_REQUEST_CODE = 2;
private File photo;
private void creatPhoto() {
photo = new File(Environment.getExternalStorageDirectory(), "camera-image.jpg");
Uri cameraImageUri = Uri.fromFile(photo);
Intent takePhotoIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
//设置保存文件uri
takePhotoIntent.putExtra(MediaStore.EXTRA_OUTPUT, cameraImageUri);
//设置照片质量
takePhotoIntent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0);
startActivityForResult(takePhotoIntent, CAMERA_REQUEST_CODE);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode != Activity.RESULT_CANCELED) {
switch (requestCode) {
case CAMERA_REQUEST_CODE:
//使用拍照得到的photo文件
doSomethingWith(photo);
break;
}
}
super.onActivityResult(requestCode, resultCode, data);
}
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />