0

アプリで声を録音して、それを 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" />

しかし、エミュレーターを実行した後、生の内部にファイルが作成されていません。誰か助けてもらえますか?

4

2 に答える 2

1

いいえ、アプリケーションは他のアプリケーションの内部ストレージに書き込むことはできません。

あなたはどちらかかもしれません、

  1. ファイルをアプリの内部ストレージに書き込みます。
  2. ファイルをデバイスの外部ストレージに書き込みます。

どちらもドキュメントで詳しく説明されています。

于 2012-06-26T03:47:43.790 に答える
0

resフォルダーに書き込むことはできません。apk 内のすべてが読み取り専用になります。ファイルを内部ストレージまたはSD カードに保存する必要があります

于 2012-06-26T04:03:27.563 に答える