2013-12-11 39 views
0

我建立使用MediaRecorder錄音機,我想重命名創建的文件改變名稱錄音機的Android

所以我的主要步驟是:

import java.io.File; 
import java.io.IOException; 
import java.util.Locale; 

import android.app.Activity; 
import android.app.AlertDialog; 
import android.content.DialogInterface; 
import android.media.MediaRecorder; 
import android.os.Bundle; 
import android.os.Environment; 
import android.view.View; 
import android.widget.Button; 
import android.widget.Toast; 

public class MainActivity extends Activity { 


private MediaRecorder recorder = null; 
private int currentFormat = 0; 
private int output_formats = MediaRecorder.OutputFormat.MPEG_4; 
private String file_exts = AUDIO_RECORDER_FILE_EXT_MP4 ; 


private String getFilename() { 
    String filepath = Environment.getExternalStorageDirectory().getPath(); 
    File file = new File(filepath, AUDIO_RECORDER_FOLDER); 

    if (!file.exists()) { 
     file.mkdirs(); 
    } 



    return (file.getAbsolutePath() + "/" + System.currentTimeMillis() + 
       file_exts); 

} 

private void startRecording() { 
    recorder = new MediaRecorder(); 

    recorder.setAudioSource(MediaRecorder.AudioSource.MIC); 
    recorder.setOutputFormat(output_formats(currentFormat)); 
    recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 
    recorder.setOutputFile(getFilename()); 



    recorder.setOnErrorListener(errorListener); 
    recorder.setOnInfoListener(infoListener); 

    try { 
     recorder.prepare(); 
     recorder.start(); 
    } catch (IllegalStateException e) { 
     e.printStackTrace(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
} 

private void stopRecording() { 
    if (null != recorder) { 
     recorder.stop(); 
     recorder.reset(); 
     recorder.release(); 

     recorder = null; 
    } 
} 


} 

和AudioRecorder文件夾它的名稱創建「138672.mp4」

那麼,如何改變這種狀況,我想它的名字a.mp4(例如)

+0

參考這個[SO問題](http://stackoverflow.com/questions/9732775/android-store-recorded-audio -using-input-text) –

+0

http://developer.android.com/reference/android/media/MediaRecorder.html –

回答

0

你可以使用,而不是你這個的getFileName代碼中創建()方法:

private String getFilename() { 
     File file = new File(Environment.getExternalStorageDirectory(), "a.mp4"); 

     if (!file.exists()) { 
      file.mkdirs(); 
     } 

集這個代碼中的startRecording()方法:

recorder.setOutputFile(file+"");