ユーザーが戻るボタンを押したときにメロディーが再生されないようにしようとしています。このコードは、ファイルの再生中に機能します。そうでない場合、エラーが発生し、アプリがシャットダウンします。どうして動かないの?
MediaPlayer melodisnutt;
public void onStop() {
super.onStop();
if ( melodisnutt.isPlaying () ) {
melodisnutt.stop();
}
}
onStop()メソッドでエラーが発生していることが確実な場合は、nullPointerExceptionのように見えます。
置き換えてみてください:
if(melodisnutt.isPlaying()){
に
if(melodisnutt != null && melodisnutt.isPlaying()){
MediaPlayerがnullでないかどうかを確認することをお勧めします。
public void onStop() {
super.onStop();
if (melodisnutt.isPlaying () && melodisnutt != null) {
melodisnutt.stop();
}
}