在我的應用程序中,我嘗試使用intent將文件路徑從一個活動傳遞到另一個活動。在我的接收活動中,我將文件路徑設置爲「null」。但是,當我在第一項活動是打印path.From我的第二個活動我附上文件使用Gmailsender.This曾是我的代碼,以郵寄,從sdcard獲取音頻文件的路徑
private void startRecord()
{
File file = new File(Environment.getExternalStorageDirectory(), "test.pcm");
try
{
file.createNewFile();
OutputStream outputStream = new FileOutputStream(file);
BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(outputStream);
DataOutputStream dataOutputStream = new DataOutputStream(bufferedOutputStream);
int minBufferSize = AudioRecord.getMinBufferSize(8000,
AudioFormat.CHANNEL_IN_MONO,
AudioFormat.ENCODING_PCM_16BIT);
short[] audioData = new short[minBufferSize];
AudioRecord audioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC,
8000,
AudioFormat.CHANNEL_IN_MONO,
AudioFormat.ENCODING_PCM_16BIT,
minBufferSize);
audioRecord.startRecording();
while(recording)
{
int numberOfShort = audioRecord.read(audioData, 0, minBufferSize);
for(int i = 0; i < numberOfShort; i++)
{
dataOutputStream.writeShort(audioData[i]);
}
}
audioRecord.stop();
audioRecord.release();
dataOutputStream.close();
}
catch (IOException e)
{
e.printStackTrace();
}
String audiofile;
audiofile=file.getAbsolutePath();
System.out.println("File Path::::"+audiofile);
}
意圖是,
Intent sigout=new Intent(getApplicationContext(),WeeklyendActivity.class);
sigout.putExtra("mnt/sdcard-test.pcm",audiofile);
startActivity(sigout);
在我的接收活動,
String patty=getIntent().getStringExtra("mnt/sdcard-text.pcm");
System.out.println("paathhhy frfom ::"+patty);
它打印null.Can任何人都可以幫助我如何獲得文件路徑。更多的事情我不確定音頻是否將保存在該文件中正確?
任何人都可以幫助我!!!在此先感謝!根據您的信息audioFile
是File
類型的變量,當你做到這一點
是要添加('audioFile')額外真的'String'? –
@David Wasser !!沒有它的文件 – Jolly