0

私のアプリケーションは、常にサービスでバックグラウンド オーディオを実行します。ホームボタンをクリックすると、コントロールはホーム画面に戻りますが、オーディオは再生され続けます。

では、ホームボタンをクリックしたときにオーディオの再生を停止するにはどうすればよいですか?

4

3 に答える 3

2

オーディオが によって再生されている場合、が破棄されてもオーディオはService影響を受けません。Activityそれがまさにそれをサービスに分離する目的です。

UI に依存させたい場合は、代わりにプレイをアクティビティに移動します。アクティビティが終了すると停止します。または、音楽を停止するためにサービスにメッセージを送信することもできます。

詳細については、開発ガイドを参照してください: http://developer.android.com/guide/topics/fundamentals/bound-services.html

于 2011-06-08T21:13:17.563 に答える
0

でオーバーライドonPause()して再開しonResume()ます。

で音楽を再生する理由はService?

その場合は、 と を使用bindService()unbindService()ます。そのため、サービスは呼び出しonDestroy()時に応答できます。ActivityunbindService()

于 2011-06-09T05:24:58.673 に答える
0

アクティビティは onPause() および/または onWindowFocusChanged() をオーバーライドして、実行していないか、ディスプレイの上にいないことを検出できます。これらは、アクティビティが表示されていない場合に再生を意図していないオーディオの再生を停止するのに適した場所です。アプリケーション内の他のアクティビティへの切り替えには注意する必要があります。

于 2011-06-08T21:13:52.133 に答える