在所有活动中展示共同的音乐播放器

时间:2011-11-29 10:03:13

标签: android android-fragments android-activity persistent audio-player android-music-player

我正在开发一个乐队的应用程序,它包括几个不同的活动,如议程,新闻部分,专辑部分等等。 因为这是一个乐队,我想在后台播放乐队的歌曲。

这不是一个问题,但我想在所有活动的底部显示一个小型音乐播放器,以便用户可以随时停止,跳过或重播一首歌曲。例如,可以在Mobile Roadie的应用程序中找到此示例。

但我不知道该怎么做。我最好的猜测是创建一个具有自己布局的音乐播放器类,并将其包含在每个活动/布局的底部。但是因为每个活动都是在自己的线程中开始的,所以我猜这会重置每个活动的玩家。

那么,我将如何在我的所有活动中添加一个普通的音乐播放器,音乐播放器的状态将保持在哪里?

例如,下载Mobile Roadie的任何基于音乐的应用程序,你就会明白我的意思。


我决定使用Fragments,但我不确定我是否可以在已有的活动中使用它们。我发现的所有例子都集中在全新的项目上,而不是现有的项目。 简而言之,您是否可以创建片段并在现有活动中使用它们? (例如在现有议程活动之上显示音乐播放器)

1 个答案:

答案 0 :(得分:3)

我建议你按照以下方式进行。由于音乐播放状态必须保留在所有活动中,因此您必须使用服务来实现此目的。您还需要一个控制面板,它必须与活动分开存在。最好的方法是使用fragments。创建一个连接到服务的片段并提供用于控制它的UI,然后将此片段添加到您需要的所有活动中。