2017-06-03 3 views
0

MediaPlayerを使用してストリーミングしていますが、ユーザーがスイッチバックに戻ったときに問題が再開しないのは、ユーザーが元に戻すたびに再生されるためです。 )MediaPlayer一時停止後にストリーミングを続行MP3

@Override 
public void onCheckedChanged(RadioGroup rg, int i) { 
    int rIds = rGroup.getCheckedRadioButtonId(); 

    switch (rIds){ 
     case R.id.btn: 
      if(mPlayer.isPlaying()) { 
       loadProgress(); 
       mPlayer.reset(); 
       streamMp3(CLASS.staticMethodforURL); 
      }else{ 
       loadProgress(); 
       mPlayer.reset(); 
       streamMp3(CLASS.staticMethodforURL); 
      } 
      break; 
     case R.id.btn1: 
      if(mPlayer.isPlaying()) { 
       loadProgress(); 
       mPlayer.reset(); 
       streamMp3(CLASS.staticMethodforURL); 
      }else{ 
       loadProgress(); 
       streamMp3(CLASS.staticMethodforURL); 
      } 
      break; 
     case R.id.btn2: 
      if(mPlayer.isPlaying()) { 
       loadProgress(); 
       mPlayer.reset(); 
       streamMp3(CLASS.staticMethodforURL); 
      }else{ 
       loadProgress(); 
       streamMp3(CLASS.staticMethodforURL); 
      } 
      break; 
     case R.id.btn3: 
      if(mPlayer.isPlaying()) { 
       loadProgress(); 
       mPlayer.reset(); 
       streamMp3(CLASS.staticMethodforURL); 
      }else{ 
       loadProgress(); 
       streamMp3(CLASS.staticMethodforURL); 
      } 
      break; 
     case R.id.btn4: 
      if(mPlayer.isPlaying()) { 
       loadProgress(); 
       mPlayer.reset(); 
       streamMp3(CLASS.staticMethodforURL); 
      }else{ 
       loadProgress(); 
       streamMp3(CLASS.staticMethodforURL); 
      } 
      break; 
     case R.id.btn5: 
      if(mPlayer.isPlaying()) { 
       loadProgress(); 
       mPlayer.reset(); 
       streamMp3(CLASS.staticMethodforURL); 
      }else{ 
       loadProgress(); 
       streamMp3(CLASS.staticMethodforURL); 
      } 
      break; 
     case R.id.btn6: 
      if(mPlayer.isPlaying()) { 
       loadProgress(); 
       mPlayer.reset(); 
       streamMp3(CLASS.staticMethodforURL); 
      }else{ 
       loadProgress(); 
       streamMp3(CLASS.staticMethodforURL); 
      } 
      break; 
     case R.id.btn7: 
      if(mPlayer.isPlaying()) { 
       loadProgress(); 
       mPlayer.reset(); 
       streamMp3(CLASS.staticMethodforURL); 
      }else{ 
       loadProgress(); 
       streamMp3(CLASS.staticMethodforURL); 
      } 
      break; 
     case R.id.btn8: 
      if(mPlayer.isPlaying()) { 
       loadProgress(); 
       mPlayer.reset(); 
       streamMp3(CLASS.staticMethodforURL); 
      }else{ 
       loadProgress(); 
       streamMp3(CLASS.staticMethodforURL); 
      } 
      break; 
     case R.id.btn9: 
      if(mPlayer.isPlaying()) { 
       loadProgress(); 
       mPlayer.reset(); 
       streamMp3(CLASS.staticMethodforURL); 
      }else{ 
       loadProgress(); 
       streamMp3(CLASS.staticMethodforURL); 
      } 
      break; 
     case R.id.btn10: 
      if(mPlayer.isPlaying()) { 
       loadProgress(); 
       mPlayer.reset(); 
       streamMp3(CLASS.staticMethodforURL); 
      }else{ 
       loadProgress(); 
       streamMp3(CLASS.staticMethodforURL); 
      } 
      break; 
    } 
} 

private void streamMp3(String u) { 
    try { 
     mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); 
     mPlayer.setDataSource(u); 
     mPlayer.setLooping(true); 
     mPlayer.prepareAsync(); 
     mPlayer.setOnPreparedListener(this); 
    } catch (Exception e) { 

    } 
} 
+0

[Android 2.2 MediaPlayerは1つのSHOUTcast URLで正常に動作していますが、もう1つでは動作しません](https://stackoverflow.com/questions/8681550/android-2-2-mediaplayer-is) -working-fine-with-one-shoutcast-url-but-with-with-the) –

答えて

0

代わりにpause()

+0

ありがとうございました。 –

0

mPlayer.reset(reset()方法の使用を使用して)。プレーヤーがagain.use mPlayer.stop();を開始することを意味するあなたのメディアプレーヤーをリセットします。メディアプレーヤーまたはmPlayer.pause()を停止します。プレーヤーを一時停止する

関連する問題