Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
メディアプレーヤーストリームを開始するメインアクティビティが2つあり、アクティビティ#2を開始して現在のアクティビティをfinish()するボタンがあります。この時点で、アクティビティ#1のタスクは完了しています。musicplayerはこの時点で問題ありません。ただし、アクティビティ#2を開いた後、メディアプレーヤーは約5秒間動作し、その後停止します。アクティビティ#2では、終了するボタンと、ハンドラーの助けを借りてループで実行されているAsyncTaskしかありません。
を呼び出しているので、アクティビティ1のMediaPlayerがメモリから消去されていると思いますfinish()。MediaPlayerインスタンスは最初のの一部ですActivity。これを修正する唯一の方法はMediaPlayer、アクティビティ2で新しいものを開始するかService、バックグラウンドですべてのメディアを処理するを作成することです。2番目の方法で行うと、1つのMediaPlayerインスタンスがすべてのアクティビティを通じて再生されたままになり、コマンドを送信するだけで済みます。
finish()
MediaPlayer
Activity
Service