MediaPlayer を使用してラジオ ストリームを再生しています。ストリームを再生するメイン アクティビティをバックグラウンドで実行すると、問題が発生します。
電話がリソースを使いすぎると (たとえば、インストールされているアプリケーションのリストを表示しようとしている間)、ストリームが停止します。リソースを節約するために、Android がストリームをシャットダウンしていると思われます。
これは、開始時にメディアプレーヤーを準備する方法です。
radioPlayer=new MediaPlayer();
radioPlayer.setDataSource(streamLocation); //with a try/catch of course in the full code
radioPlayer.prepareAsync();
radioPlayer.seekTo(0);
radioPlayer.setOnInfoListener(this);
radioPlayer.setOnPreparedListener(new OnPreparedListener(){
public void onPrepared(MediaPlayer mp)
radioPlayer.start();
});
すべてメインスレッドで実行されます。