MediaPlayerを使用してビデオコンテンツを再生するアクティビティがあります。このアクティビティは、キーを上下に押すとさまざまなHLSビデオストリームを再生することにより、TVデバイスをシミュレートします。ビデオを長時間(約15分以上)視聴した後、いずれかのキーを押すと、APPが応答せず、強制終了画面が表示されます。これが私がすべての重要なイベントのアップ/ダウンで行っていることです:
//I'm creating the media player object only once, after every channel switch i do:
if(mMediaPlayer.isPlaying()) {
mMediaPlayer.stop();
mMediaPlayer.reset();
}
try {
mMediaPlayer.setDataSource(app.channels.get(current_index).streaming_url);
mMediaPlayer.setDisplay(holder);
mMediaPlayer.setScreenOnWhilePlaying(true);
mMediaPlayer.prepareAsync();
}
catch(Exception e) {
e.printStackTrace();
}
//After this I have an onPreparedListener and mMediaPlayer.start()
私の仮定は、それがデバイスのメモリを消費しているということですが、私は何が間違っているのか理解できません