2

这是一个简单的例子,但无法理解。音乐播放器。我有带有 UI 和功能的 Activity(播放、暂停、停止 ....)。我需要做在后台播放音乐的服务。服务和活动如何沟通。例如:

  1. 在活动中我们选择歌曲
  2. id song 有意向服务(在 putExtra 的帮助下)
  3. 服务 -> 播放(歌曲)
  4. 我们关闭活动和服务工作
  5. 通过时间(歌曲更改)我们打开活动,他显示新的当前歌曲。

服务如何“说出”活动的变化?以及如何再次“说”有关更改的服务?(我们开始的服务所以 putExtra 不适合)。

如果有代码示例显示请。抱歉英语不好。

4

2 回答 2

0

互联网上有许多服务和活动之间通信的示例。

这有一些例子:How to have Android Service communication with Activity

这也是如此:将数据从服务发送到活动

基本上看起来你可以使用一个意图或只拥有一个单例服务。

于 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 回答