如何给录音机指定具体位置

时间:2011-09-07 05:21:23

标签: android

感谢之前的回复

我正在使用android内置录音机进行应用程序。我想将声音存储在特定位置。但每当我在内置录音机中使用android(使用意图动作)时,它会将所有语音保存到默认文件夹中。无论如何都要自定义保存语音的位置。如果有人有想法请指导我..

2 个答案:

答案 0 :(得分:0)

试试这段代码:

    File root = new File(Environment.getExternalStorageDirectory()
                + File.separator +   "DemoApplication"+File.separator+"Media"+File.separator+"audio"+File.separator);
        if(root.exists())
            root.delete();
        root.mkdirs();
    File voiceDirectory = new File(root, String.format("AudioFile_%d.amr",         System.currentTimeMillis()));

        outputFileUri = Uri.fromFile(voiceDirectory);

        intent = new Intent(MediaStore.Audio.Media.RECORD_SOUND_ACTION);
        intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);

答案 1 :(得分:0)

从com.android.soundrecorder.Recorder.java

,我们可以找到:

 public void startRecording(int outputfileformat, String extension) {
    if (mSampleFile == null) {
        File sampleDir = Environment.getExternalStorageDirectory();
        if (!sampleDir.canWrite()) // Workaround for broken sdcard support on the device.
        sampleDir = new File("/sdcard/sdcard");
        try {
            mSampleFile = File.createTempFile(SAMPLE_PREFIX, extension, sampleDir);
        } catch (IOException e) {
            setError(SDCARD_ACCESS_ERROR);
            return;
        }
        ....
    }
}

mSampleFile是在代码中创建的, 所以...我们无法自定义保存语音的位置。