我正在尝试使用Android设备上的默认相机拍摄照片,使用以下从教程中获得的代码(并稍加修改):
private void TakePhoto() {
Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
String path = Environment.getExternalStorageDirectory()
.getAbsolutePath();
path += "/myFolder/";
File dir = new File(path);
dir.mkdirs();
File file = new File(path, "myPicture.jpg");
Uri outputFileUri = Uri.fromFile(file);
intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
startActivityForResult(intent, 0);
}
在结果上,我使用:
将其上传到S3 PutObjectRequest por = new PutObjectRequest(bucket, picture_name,
new java.io.File("sdcard/myFolder/myPicture.jpg"));
这一切都很好(即使是臭名昭着的三星手机!)但问题是,有时当我拍照,并按“保存”(或某些手机上称为“OK”)时,它会返回相机屏幕好像提示拍摄另一张照片,但如果我等待~2-3秒,它将返回活动状态。有没有人知道延迟发生的原因?
关键是 - 我应该在点击“确定”后立即返回到原始活动,而是有延迟。