2017-02-15 14 views
0

Я пытаюсь воспроизвести аудио в прямом эфире с помощью медиаплеера. Проблема заключается в том, что когда я использую URL-адрес, он блокирует поток пользовательского интерфейса когда-то, тогда он работает нормально. Но мне нужно, чтобы он воспроизводил песню с буферизацией.media player play song with buffer

Спасибо заранее. Пожалуйста, помогите.

try { 
      audioPlayer = new MediaPlayer(); 
      audioPlayer.setOnBufferingUpdateListener(this); 
      audioPlayer.setOnCompletionListener(this); 
      audioPlayer.setAudioStreamType(useFrontSpeaker ? AudioManager.STREAM_VOICE_CALL : AudioManager.STREAM_MUSIC); 

     try { 
      audioPlayer.reset(); 
      audioPlayer.setDataSource(mSongDetail.getPath()); 
      audioPlayer.prepare(); 
     } catch (IllegalArgumentException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (SecurityException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (IllegalStateException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 

     catch (IOException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     audioDuration = audioPlayer.getDuration(); 
     audioPlayer.start(); 

     startProgressTimer(); 
    } catch (Exception e) { 
     if (audioPlayer != null) { 
      audioPlayer.reset(); 
      audioPlayer.release(); 
      audioPlayer = null; 
      isPaused = false; 
      MusicPreferance.playingSongDetail = null; 
     } 
     return false; 
    } 
+0

Опубликовать вопросы, связанные с программой здесь ... не общие вопросы ... Опубликуйте свой код ... что-то вы пробовали ?? – Akshay

+0

Я добавил код – priyanka

ответ

0

Попробуйте использовать audioPlayer.prepareAsync() + asyncHandler для него, или использовать отдельную тему.