Android-Mediarecorder将outputformat输出到base64

Android-Mediarecorder将outputformat输出到base64,android,mediarecorder,Android,Mediarecorder,我正在android中开发录音应用程序。我的目标是录制音频并将其发送到我的webservice方法。下面给出了录制音频的代码片段 private MediaRecorder mRecorder = null; private static String mFileName = Environment.getExternalStorageDirectory().getAbsolutePath() + "/audiorecordtest.3gp"; private void startRecord

我正在android中开发录音应用程序。我的目标是录制音频并将其发送到我的webservice方法。下面给出了录制音频的代码片段

private MediaRecorder mRecorder = null;
private static String mFileName = Environment.getExternalStorageDirectory().getAbsolutePath() + "/audiorecordtest.3gp";

private void startRecording() {
     mRecorder = new MediaRecorder();
     mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
     mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
     mRecorder.setOutputFile(mFileName);
     mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
     try {
        mRecorder.prepare();
     } catch (IOException e) {
        Log.e(LOG_TAG, "prepare() failed");
     }
     mRecorder.start();
}

private void stopRecording() {
    mRecorder.stop();
    mRecorder.release();
    mRecorder = null;
}
在上述代码中,输出文件已存储在“mFileName”路径中。现在,我获取输出并将其存储到指定的“ExternalStorageDirectory”路径中。但我不想将输出文件存储到“ExternalStorageDirectory”中。我想将输出转换为base64字符串。有人能帮我做这件事吗

Objective:
    1) I don't want to store the output in local.
    2) Convert the output into base64 string.

在编码之前先存储有什么问题?(另外,如果录制时间较长,您将需要一个相当大的字符串,内存将是一个问题)谢谢njzk2。录制的语音应在我的应用程序中进行保护。所以我不想存储在本地(我只录制了5秒钟的音频,所以输出字符串会很小)。是否可以将输出转换为base64。您的记录将进入文件系统。但是你可以把它放在你的应用程序的私有目录中。谢谢。你能给我一些示例,让我把文件放在myapplication的私有目录中吗。请参阅getDir方法