2013-10-19 72 views
1

我正在學習Android應用程序開發過程,並試圖創建一個歌曲應用程序。Android Mediaplayer應該再次發佈上一首歌onCreate活動

問題:

我有兩個活動,答:songslist & B:MediaPlayer的

b。通過mp.prepareAsync();發揮遠程歌曲,當其準備好開始播放。

即使我轉移到其他活動或打開任何其他應用程序,我也想繼續播放歌曲。

但問題出現了,當歌曲正在運行時,我回去選擇新歌曲,然後創建活動B,它開始流式傳輸並播放新歌曲,因爲老歌曲仍在運行。

我的代碼:

public void Play() { 
if(mp.isPlaying()) 
{ 
releaseMediaPlayer(); 
Log.d("MediaPlayer", "Player is already running release it first"); 
} 

mp.setAudioStreamType(AudioManager.STREAM_MUSIC); 
URL = BASE_URL + album_files[songIndex]; 
mp.setDataSource(URL); 
mp.prepareAsync(); 

btnPlay.setImageResource(R.drawable.btn_pause); 
songTitleLabel.setText("Loading track, please wait...."); 

} 
private void releaseMediaPlayer() { 
    if (mp != null) { 
     if(mp.isPlaying()) { 
      mp.stop(); 
     } 
     Log.d("MediaPlayer", "Player is released"); 

     mp.release(); 
     mp = null; 
    } 
} 

回答

0

你應該有播放播放列表和媒體播放器的活動旁邊的音樂服務。即使退出節目,服務也會播放音樂,並且您可以使用小部件來控制播放音樂。

0

嘗試this。使用答案你可以做後臺服務,也可以做後臺服務。 祝你好運

相關問題