在播客应用上工作我正在考虑如何实现一个小型播放器(其中包括当前播放,播放,暂停,倒带和前进按钮的进度条),这些播放器将通过我的应用在多个活动中显示。
为了在后台播放播客,我已经实现了Service
来处理MediaPlayer
和当前播放的播客。
在多个活动中更新小型播放器并暂停和移动当前播放的播客的最佳方法是什么?
提前致谢。
答案 0 :(得分:0)
你走在正确的轨道上。可以控制或查看Activity
的每个mediaplayer
都应绑定到正在运行的服务。如果您在服务中实施Observer design pattern。然后,您可以直接调用该服务,并执行从服务到您的活动的回调。
请确保您在单独的线程中在后台播放音频/视频,因为服务和活动在同一个帖子中运行。
对于进度条,我应该实现一个回调函数,比如在绑定服务后立即调用的progress(int secondsFromStart,int totalTimeSeconds)。然后UI可以更新它的进度条,直到它达到totalTimeSeconds,或者她从服务收到某种pauze调用。
答案 1 :(得分:0)
如果要在多个活动中使用相同的Player小部件,则应尝试使用Fragments API。这将使您构建复杂的UI。您的所有活动都将成为片段,代码中的细微更改。