0

音楽ファイルを再生する Android 用の非常にシンプルなアプリケーションを作成しようとしています (Android を使い始めたばかりです)。アプリケーションの起動時に開始されるアクティビティが 1 つだけあり、音楽ファイルの再生が開始されます。必要なのは、設定メニューからシャットダウンするように特に指示しない限り、戻るボタンまたはホームボタンを押しても、アクティビティが常に実行される (音楽が再生される) ことです。再度実行しようとすると、そのアクティビティが復元されます。前に(基本的に、そこにいる他のすべてのプレーヤーがどのように機能するか)。ただし、たとえば、[戻る] を押してメニュー画面に戻り、アプリをもう一度クリックすると、アクティビティの別のインスタンスが実行されます (音楽が 2 倍になるため、わかります)。これを防ぐにはどうすればよいですか?どうもありがとう。

4

2 に答える 2

1

バックグラウンドで音楽を再生するには、サービスを使用することをお勧めします。

于 2013-02-07T22:36:10.327 に答える
0

android:launchMode= "singleInstance"マニフェスト ファイルで指定します。これは、アクティビティがアプリケーション全体であることを意味します。

音楽の時間の状態を保存することを忘れないでください。SharedPreferencesサウンドの再生が終了した秒で整数を保存するために使用し、onResume()メソッドで状態を復元するだけです。

残念ながら、アクティビティが破棄されるため、戻るボタンを押した後に音楽を再生することはできません。他の回答が示唆するように、サービスを開始する必要があります。onDestroy()その理由は、音楽を再生するには Context オブジェクトが必要であり、メソッドが呼び出された後は使用できなくなるためです。

http://developer.android.com/guide/topics/media/mediaplayer.html ここでは、サービスでメディア ファイルを再生する例を見つけることができます。

于 2013-02-07T22:35:11.853 に答える