簡體   English   中英

存儲在SD卡中時如何設置/重命名音頻?

[英]How to set/rename of audio while storing in SD card?

我正在創建一個錄制語音的應用程序,當我單擊StopRecording按鈕時,
它存儲在SD卡/內部存儲器中。 但是在存儲時,請使用諸如sound1356543類的隨機名稱。 但是我需要在用戶選擇或序列上設置名稱
MyAudio1
MyAudio2
MyAudio3
MyAudion
我怎樣才能做到這一點? 這是我的代碼供參考。

File sampleDir = Environment.getExternalStorageDirectory();         

        audiofile = File.createTempFile("Recording", ".3gp", sampleDir);                    
            recorder = new MediaRecorder();
            recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
            recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
            //recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
            recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
            recorder.setOutputFile(audiofile.getAbsolutePath());

protected void addRecordingToMediaLibrary() {
    ContentValues values = new ContentValues(4);
    long current = System.currentTimeMillis();
    values.put(MediaStore.Audio.Media.TITLE, "audio" + audiofile.getName());
    values.put(MediaStore.Audio.Media.DATE_ADDED, (int) (current / 1000));
    values.put(MediaStore.Audio.Media.MIME_TYPE, "audio/3gpp");
    values.put(MediaStore.Audio.Media.DATA, audiofile.getAbsolutePath());
    ContentResolver contentResolver = getContentResolver();

    Uri base = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
    Uri newUri = contentResolver.insert(base, values);

    sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, newUri));
    Toast.makeText(this, "Added File " + newUri, Toast.LENGTH_LONG).show();
}

}

如何將名稱設置為音頻文件。
提前致謝。

刪除此行,然后檢查

values.put(MediaStore.Audio.Media.TITLE, "audio" + audiofile.getName());

我有同樣的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM