2011-12-24 13 views
1

ホームボタンを押した後でもonPauseとすべてをオーバーライドしようとしましたが、mp3ファイルは再生を続けます。 私はonPauseメソッドを記録していますが、動作しているようですが、メディアプレーヤーを停止していません。ホームボタンが押されたときにmediaplayerを停止する方法

ホームボタンを押すと、自分のmediaplayerが保持されているオブジェクトがNULLに設定されていると思います。ホームボタンを押しても音楽を止めることはできますか?

+0

onKeyDown(int keyCode、KeyEvent event)を使用してkeypressアクションをオーバーライドしてください。わかりませんが、ちょうど助けるかもしれません –

+0

KEY_HOMEはオーバーライドできません – user870380

+0

あなたの活動のコードを提供できますか?そしてMediaplayerの使い方は? – Yury

答えて

1

User870380が正しい場合、正当な理由でホームキーを上書きすることはできません。 MediaPlayerはかなり不安定でバグが多いので、正確なコードを見ると非常に便利です。あなたのコードは、おそらく次のようになります:あなたはまた、それはIllegalStateExceptionがスローかどうかを確認する必要があるかもしれません

@Override 
protected void onPause() { 
     if (mediaPlayer != null) { 
      mediaPlayer.stop(); 
      mediaPlayer.release(); 
      mediaPlayer = null; 
         } 
} 

。 MediaPlayerはそれを行います。たくさん。

MediaPlayerを停止しようとすると、logcatにエラーが発生していますか?

サービスでMediaPlayerを実行していますか?

関連する問題