0

こんにちは、サービスに実装された MediaPlayer を使用して MP3 ファイルを再生する Android アプリを作成しようとしています。これにより、ユーザーが別のアクティビティを開くことを決定した場合、または電話の画面ロックがオンになった場合にオーディオ ファイルが引き続き再生されます。また、再生、停止、一時停止、巻き戻し、早送りに使用する MediaController ウィジェットをユーザーに提供したいと考えています。サービスで MP3 ファイルを再生するアプリを既に持っていますが、今すぐ MediaController を追加したいのですが、これがサービスでどのように行われるのか理解できません。サービスをアクティビティに「バインド」する必要があると思いますが、それがどのように行われるかもわかりません。

だから私の質問は:

1) サービスとアクティビティをバインドするにはどうすればよいですか?

2) Service に MediaPlayer と MediaController を実装するにはどうすればよいですか?

ありがとう!

4

1 に答える 1

0

MediaPlayer については、次のドキュメントを参照してください: http://developer.android.com/reference/android/media/MediaPlayer.html

所有しているサービスの場合、アクティビティは を呼び出すことができますstartService(new Intent(this, MyService.class))。これにより、コールバックがトリガーされonStartCommandます (サービスが既に開始されている場合でも)。stopService(intent)サービスを停止して破棄したい場合にも、アクティビティを呼び出すことができます。サービスは を呼び出すこともできますstopSelf()

サービスの「バインディング」は通常、他のプロセスに属するサービスを指し、他のプロセスがプロセスの境界を越えてメソッドを呼び出すためのアクセスを許可します。それがあなたがやろうとしていることでない限り、おそらくそれを無視することができます.

于 2013-02-19T04:57:54.320 に答える