在我的应用程序中,我使用以下代码启动相机:
public void imageFromCamera() {
Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
mImageFile = new File(Environment.getExternalStorageDirectory()+File.separator+"MyApp",
"PIC"+System.currentTimeMillis()+".jpg");
mSelectedImagePath = mImageFile.getAbsolutePath();
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(mImageFile));
startActivityForResult(intent, TAKE_PICTURE);
}
这会将图像保存到路径mSelectedImagePath,即/sdcard/MyApp/.jpg.
然后在onActivityResult中捕获IMAGE_CAPTURE意图的返回并启动您的活动以从那里编辑图像!
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
switch(requestCode) {
case TAKE_PICTURE:
//Launch ImageEdit Activity
Intent i = new Intent(this, ImageEdit.class);
i.putString("imgPath", "mSelectedImagePath");
startActivity(i);
break;
}
}
}
希望这可以帮助!