我正在使用意圖啓動相機應用程序的應用程序中工作;相機以圖片或視頻模式啓動,到目前爲止它工作並將生成的文件保存在SD卡中。現在的問題是,雖然指定一個新的自定義文件名適用於圖片意圖,但它似乎不適用於攝像機意圖;實際上,EXTRA_OUTPUT或者簡單地「輸出」似乎在視頻意圖中被忽略。我使用以下代碼:Android自定義視頻捕捉文件路徑不起作用
對於圖片(所有的作品不知道,包括節約使用自定義文件名PIC)
// makes new unique filenames like Picture_03161185528.jpg
fileName = makeFileName("Picture")+".jpg";
path = (new StringBuilder()).
append(Environment.getExternalStorageDirectory()).
append("/"+fileName).toString();
File file = new File(path);
Uri outputFileUri = Uri.fromFile(file);
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra("output", outputFileUri);
mainActivity.startActivityForResult(intent, CAMERA_RESULT);
對於視頻(需要視頻,但總是用默認的名稱像VIDEO001,VIDEO002等,而不是自定義文件名,我需要)
// makes new unique filenames like Video_03161185528.3gp
fileName = makeFileName("Video")+".3gp";
// even tried this hardwired filename...but nothing
fileName = "video.3gp";
path = (new StringBuilder()).
append(Environment.getExternalStorageDirectory()).
append("/"+fileName).toString();
File file = new File(path);
Uri outputFileUri = Uri.fromFile(file);
Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
// seems to be ignored, the file always get saved under default filename
intent.putExtra("output", outputFileUri);
// same as previous line...seems to be ignored
intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
mainActivity.startActivityForResult(intent, VIDEO_RESULT);
在任何情況下,畫面意圖節省我的自定義文件名的畫面,但視頻目的顯然忽略它,總是使用保存文件默認的文件名。我的問題是:
a)有什麼辦法可以使用自定義文件名進行這項工作嗎? b)或者有什麼方法可以正確地知道下一個可用的默認文件名? c)或者有任何其他方式知道哪個文件被創建並重命名它?
歡呼聲,謝謝!
亞蘭
您是否找到解決此問題的方法? – Mohit