2016-01-25 7 views
1

я создал файл и использовать его, чтобы сохранить свой звуковой файл, но этот файл не может быть добавлен в MusicAndroid не могут найти новый созданный звуковой файл в музыке

File f; 
boolean recording=false; 
public void startStopRecording(View view){ 

    try { 

     if (!recording) { 
      do { 
       DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
       Date date = new Date(); 
       String filename = "rec_" + dateFormat.format(date)+".gpp"; 
       outputFile = Environment.getExternalStorageDirectory().getAbsolutePath() + "/myRec/"+filename; 
       f = new File(outputFile); 
       f.getParentFile().mkdirs(); 

      }while(f.exists()); 
      myAudioRecorder = new MediaRecorder(); 
      myAudioRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); 
      myAudioRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); 
      myAudioRecorder.setAudioEncoder(MediaRecorder.OutputFormat.AMR_NB); 
      myAudioRecorder.setOutputFile(outputFile); 
      myAudioRecorder.prepare(); 
      myAudioRecorder.start(); 
      recording=!recording; 
     }else{ 
      myAudioRecorder.stop(); 
      myAudioRecorder.release(); 
      myAudioRecorder = null; 
      recording=!recording; 

      Intent mediaScanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE); 
      mediaScanIntent.setData(Uri.fromFile(f)); 
      sendBroadcast(mediaScanIntent); 
      MediaScannerConnection.scanFile(this, new String[]{f.getAbsolutePath()}, null, null); 
     } 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 

} 

Я также попытался это, до сих пор не работает

ContentValues values = new ContentValues(4); 
long current = System.currentTimeMillis(); 
values.put(MediaStore.Audio.Media.TITLE, "audio file"); 
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, f.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)); 

Как добавить звуковой файл в музыку?

ответ