0

我有一個Android應用程序,我嘗試播放特定活動的背景聲音(聲音將播放單個活動而不是整個應用程序)。 正在使用此代碼來啓動MediaPlayer的在設備主頁按鈕停止音樂播放器android

MediaPlayer backMP = MediaPlayer.create(this, R.raw.theme_loop); 
backMP.setLooping(true); 
backMP.start(); 

它工作正常,但我只是想停止對home鍵按下音樂爲了這個,我有嘗試 backMP.release()backMp.stop()onPause()方法沒有什麼是對我的工作。

+0

您可以將代碼發佈到您的活動?兩個建議的答案都是有效的。 –

回答

0

兩個的onDestroy,的onStop使用backMP.stop,並在onPause它會解決你的問題

0

用這種方式

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) 
{ 
    if(keyCode == KeyEvent.KEYCODE_HOME) 
    { 
     Log.d("Test", "Home button pressed!"); 
     backMP.stop(); 
    } 
    return super.onKeyDown(keyCode, event); 
} 

,或者你可以使用這樣的開始的onResume播放()

@Override 
    protected void onResume() { 
     super.onResume(); 
        backMP.start(); 
        } 

並停止在onpouse()那樣

@Override 
     protected void onPause() { 
    // TODO Auto-generated method stub 
    super.onPause(); 
     backMP.stop(); 
    } 
+3

我認爲這不會起作用,Android不允許您捕獲主鍵事件。有關惡意內容的信息... – ThaMe90

+0

使用OnPause會更好。當應用程序重新打開時,OnResume再次開始播放。 – ThaMe90

+0

我已經試過這個,但它不工作。 – rkgarg

相關問題