Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
String path = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "test_2016_7_26";
File file = new File(path);
if(!file.exists()) {
file.mkdir();
}
path += File.separator + "test123.jpg";
//Uri uri = Uri.fromFile(new File(path));
//System.out.println("================>" + uri.toString());
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.parse(path));
startActivityForResult(intent, 0);
因爲工作需要,需要調用相機拍照,將拍完的照片保存到指定路徑用於上傳。
但是,拍完後無法返回,上網查原因說是指定的保存路徑錯誤,但檢查過,路徑是正確的。後來和自己之前寫的代碼對照發現只有Uri的創建實例方式不同,雖然intent.putExtra接受的確是是Uri但是Uri.parseString和Uri.fromFile是有區別的,因爲在fromFile的Uri中,路徑頭自動加了file:標識,而相機需要識別爲本地路徑所以只能用fromFile傳入Uri.