私は2つのアクティビティにRecyclerviewと、Recyclerviewの項目の1つをクリックするたびに起動されるdetailedActivityを持っています。 detailedActivityには、detailedActivityが作成されるたびに作成されるmediaplayerコンポーネントがあります。今onDestroy方法で私はいつも、このコードでのMediaPlayerで撮影されたリソースを解放:準備中にメディアプレーヤーを解放するとアプリがフリーズする
@Override
protected void onDestroy() {
if (mMediaPlayer != null) {
if (mMediaPlayer.isPlaying()) {
mMediaPlayer.stop();}
mMediaPlayer.release();
mMediaPlayer=null;
}
super.onDestroy();
}
アプリはしばらくの間、メディアプレーヤがまだ準備している間、私は戻るボタンをクリックするたびにフリーズします。それが準備している間、私は活動を破壊したが、それは既に準備済み状態の場合には発生しません場合
I/Choreographer: Skipped 112 frames! The application may be doing too much work on its main thread.
したがって、この凍結が起こるのみ:私はlogcatに入るメッセージはこれです。私はprepreAsyncを使ってインターネットからメディアを取得します。おかげさまで どんな助けも高く評価されます。私は数日間この問題に立ち往生してきました!
ありがとうございました。私はそれを試みましたが、それは動作していません。問題は準備中のどこかにあると私は信じている。準備中の突然の活動の破壊は、これを引き起こしています。私はまだそれを解決する方法を知らない。 –
これはバグかもしれません。私の更新された答えをお読みください。 –