2012-06-26 55 views
0

我试图在我的应用程序中录制声音,然后将其存储在res文件夹中。我还做了更少如下:如何将记录文件存储在res文件夹中?

private MediaRecorder recorder; 


    static final String OUTPUT_FILE = "/MediaPlayer/res/raw/recordoutput.3gpp"; //MediaPlayer is the java class and raw is the folder that I would like to put my recorded voice in 

private void beginRecording() throws Exception{ 
     killMediaRecorder(); //I implemented this function to kill the existing recorder 
     File outFile = new File(OUTPUT_FILE); 

     if(outFile.exists()) 
     { 
      outFile.delete(); 
     } 

     recorder = new MediaRecorder(); 
     recorder.setAudioSource(MediaRecorder.AudioSource.MIC); 
     recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); 
     recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 
     recorder.setOutputFile(OUTPUT_FILE); 
     recorder.prepare(); 
     recorder.start(); 

    } 

清单:

<uses-permission android:name="android.permission.RECORD_AUDIO" /> 

但之后,我跑模拟器没有原始内创建的文件,能有人帮助?

回答

0

无法读取资源文件夹,一切都在APK将。你必须将文件保存在您的内部存储或到SD卡

+0

非常感谢! –

+0

欢迎您! –

+0

大声笑...这正是我想说的。我想你不明白哈哈。好吧。 –

1

不,应用程序无法写入其他应用程序的内部存储器。

您既可以,

  1. 将文件写入到您的应用程序的内部存储。
  2. 将文件写入设备的外部存储器。

两者在documentation中详细描述。

+0

对不起,我应该说明我的应用程序是MediaPlayer的项目以及 –

+0

我只使用一个应用程序的工作中实现的,不十分明白你是什​​么意思 –

+0

这是你正在谈论的媒体播放器吗? http://developer.android.com/reference/android/media/MediaPlayer.html –

相关问题