2017-02-08 2 views
0

В настоящее время я пишу приложение, которое имитирует входящий звонок. Я хочу дать пользователю возможность указать звуковой файл, который начнет воспроизводиться, когда он примет вызов. Я хочу, чтобы пользователь просто просматривал свой телефонный каталог и указывал файл. Мне хотелось бы получить некоторые предложения о том, как это сделать. (Не запрашивая решение только некоторые подсказки, потому что я довольно новичок в программировании на Android.) Заранее благодарен: DОбзор звукового файла в android

ответ

0

Вы можете добавить код ниже в свой проект, если вы хотите выбрать аудио.

public class SoundActivity extends Activity { 



    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

    //for example you have a button that open SoundBrowser when trigger 
    OpenSoundFileButton.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent intent = new Intent(); 
       intent.setType("audio/*"); 
       intent.setAction(Intent.ACTION_GET_CONTENT); 
       startActivityForResult(intent,1); 
      } 
     }); 

    } 

// override onActivityResult in the same Activity, as below 

     @Override 
    protected void onActivityResult(int requestCode,int resultCode,Intent data){ 

     if(requestCode == 1){ 

     if(resultCode == RESULT_OK){ 

      //the selected audio. 
      Uri myUri = data.getData(); 

      //and by taken uri you can start your Media 
      MediaPlayer mPlayer = new MediaPlayer(); 
      mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); 
      mPlayer.setDataSource(getApplicationContext(), myUri); 
      mPlayer.prepare(); 
      mPlayer.start(); 
     } 
     } 
     super.onActivityResult(requestCode, resultCode, data); 
    } 
} 
+0

Я уверен, что это хороший ответ, но, как я уже сказал, я довольно новичок в программировании на андроид, и я был бы признателен, если бы вы могли объяснить свой код немного больше. Что я хочу сделать, так это отобразить что-то вроде браузера файлов, а затем вернуть uri с выбранным файлом в мою активность, которая будет использовать MediaPlayer для воспроизведения. – Dimitris

+0

@ Dimitris ответ был обновлен, дайте мне знать, если у него есть какие-либо трудности. –

+0

О, я думаю, я понял это сейчас. Что вы говорите, так это то, что мне нужно будет создать активность браузера и передать его созданному намерению (то есть в onClick), а затем я получу результат с помощью метода override onActivityResult? – Dimitris

Смежные вопросы