アプリで音楽を再生しようとしていますが、理解できない問題が発生しました。プログラムを最初にロードすると、正常に動作し、音楽がロードされて再生されます。電話をアイドル状態にしてから元に戻すと、アプリは再び機能します。しかし、3回目にアイドル状態にして戻ると、メディアプレーヤーはnullを返し、再開時にアプリをクラッシュさせます。メディアプレーヤーのコードは次のとおりです。
public void startMusic(Context context)
{
if (music != null){
if (music.isPlaying()){
music.stop();
}
music.release();
music = null;
}
music = MediaPlayer.create(context, R.raw.song);
music.setLooping(true);
musicPlaying = true;
}
music.setLooping(true);
コードの行に到達すると、音楽がnullであると言って、アプリがクラッシュします。
何か案は?