0

У меня есть приложение для Android, в котором я пытаюсь воспроизвести фоновый звук для определенной активности (звук будет воспроизводиться на одной активности не для целого приложения). Am с помощью этого кода, чтобы запустить MediaPlayerОстановка музыкального плеера на домашней кнопке устройства андроид

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

Он работает нормально, но я просто хочу, чтобы остановить музыку на кнопку домой прессы для этого у меня есть попробовать backMP.release(), backMp.stop() в onPause() метод ничего не работа для меня.

+0

Можете ли вы опубликовать код своей деятельности? Оба предложенных ответа действительны. –

ответ

0

использование backMP.stop в обоих OnDestroy, OnStop и 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(); 
        } 

и остановка в офлайне()

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

Я не думаю, что это сработает, Android не позволит вам захватить событие Home key. Что-то о вредоносном контенте ... – ThaMe90

+0

Было бы лучше использовать OnPause. И OnResume снова начнет воспроизводиться, когда приложение снова откроется. – ThaMe90

+0

Я уже пробовал этот, но он не работает. – rkgarg

Смежные вопросы