2

簡単な例ですが、理解できません。音楽プレーヤー。UI と関数 (再生、一時停止、停止など) を含むアクティビティがあります。バックグラウンドで音楽を再生するサービスを行う必要があります。サービスとアクティビティがどのように通信できるか。例えば:

  1. アクティビティで曲を選択します
  2. id song 意図を持ってサービスを開始 (help putExtra を使用)
  3. サービス -> 再生 (曲)
  4. 活動とサービス作業を終了します
  5. 時を経て(曲の変化)私たちは活動を開始し、彼は新しい現在の曲を示しています。

サービスはどのように変化について活動を「言う」のですか? そして、どのように活動が変化するかについてのサービスを「言う」?(サービス開始ですのでputExtraは不向きです)。

コード例がplzを示している場合。下手な英語でごめんなさい。

4

2 に答える 2

0

インターネット上のサービスと活動の間のコミュニケーションの例はたくさんあります。

これにはいくつかの例があります: Android サービスをアクティビティと通信させる方法

サービスからアクティビティへのデータの送信

基本的に、インテントを使用するか、シングルトン サービスを使用できるようです。

于 2012-05-08T20:51:10.860 に答える
0

また、特に音楽プレーヤーについては、このプロジェクトをご覧ください。

https://github.com/kreed/vanilla

音楽の再生に使用するサービスは次のとおりです: https://github.com/kreed/vanilla/blob/master/src/org/kreed/vanilla/PlaybackService.java

どういうわけかサービスでコールバックを使用しているようです。

于 2012-05-08T20:54:53.667 に答える