Joel Auterson
Joel Auterson

Reputation: 728

Android: Stop playback on Home or Back button

When I press back or home in my application, it hides, but the MediaPlayer keeps going. Is there a way to know when these buttons have been pressed and stop playback before closing?

Upvotes: 2

Views: 4015

Answers (3)

akashgupta
akashgupta

Reputation: 51

just implement this method in your class where media player is calling...

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) 
    {
        if ((keyCode == KeyEvent.KEYCODE_BACK)) 
        { //Back key pressed
           //Things to Do
            if(mediaPlayer!= null)
            {
                mediaPlayer.stop();
                mediaPlayer=null;
            }
            finish();
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }

Upvotes: 3

Computerish
Computerish

Reputation: 9591

You should be able to override the onPause() function in your Activity. onPause() will be called when you Activity is hidden and you can pause the MediaPlayer there.

For example,

@Override
protected void onPause() {
    super.onPause(); // Don't forget this line
    myMediaPlayer.pause() // Or whatever the function is to pause it
}

Upvotes: 2

devvy
devvy

Reputation: 11

Don't forget to add super.onPause; if you forget it will cause a FC.

Upvotes: 1

Related Questions