我正在尝试深入服务体系结构。
仅用于测试目的,我正在创建音乐应用程序。
毫无疑问音乐应该在服务中播放,但要使用什么样的通信? 据我所知服务可以绑定或启动(或两者同时)Android绑定服务vs启动服务音乐应用
首先,我需要播放/停止/暂停/套源...
其次,我需要通知用户界面如果音乐播放器是关于像进展,缓冲等事件打开...
在这里,我对此的想法。
我想到混合绑定和启动服务。
只要歌曲只能从UI设置以及暂停/播放/停止/寻找,我选择使用活页夹与UI服务通信。 (绑定服务内部活动,并获得绑定回与服务通信)
通知像轨道完成,下一个轨道,当前轨道位置来自服务。我决定使用Broadcast receiver
发送此类通知,因为它可能是多个感兴趣的组件。
所以我的问题是
- 什么是音乐播放器业务通信(绑定或广播)的最佳选择?
- 系统如何知道什么样的服务是?我的意思是,即使服务是
bound
我首先需要调用startService
方法,然后绑定它。这是否意味着如果即使调用一个方法bindService
,它也会被视为绑定服务,并且在调用unbind
方法时会被终止? LocalBroadcastManager
与服务交流有意义吗?至于LocalBroadcastManager
是每个应用程序本地的,为什么不使用绑定服务?如果其他应用程序对事件感兴趣,则全局广播很有意义。
请帮忙理解这个机制。
谢谢。
您是否完成音乐应用程序?如果是,您如何管理音乐(播放,暂停,停止...)?通过服务,意向服务或其他?我在你的起点;) –