4

我想在我的活动中播放音频文件。

我有三个用于控制媒体的按钮:播放/暂停/停止。此外,我有一个媒体搜索栏,可用于前进/后退曲目。

我正在尝试每 1 秒更新一次搜索栏进度。然后,我想到了Threads。这是正确的方向还是我需要考虑使用ServicesAsyncTasks

MediaPlayer 是否带有搜索栏?这对我有很大帮助。

谢谢,

4

3 回答 3

1

如果您想每秒更新一次,我会推荐TimerTask

于 2011-07-24T10:07:01.267 回答
1

我会设置一个用于控制媒体播放器的服务,以及用于应用程序显示的 AsyncTask。

让您的应用程序向服务发送消息以停止、启动(使用按钮的 onClick),并在需要更新屏幕信息时获取当前位置信息。这将使演奏与控制分开。

您的应用程序可以使用简单的 AsyncTask 在其后台线程中暂停 (SystemClock.sleep(1000)),并在 UI 上运行的更新进度线程中更新任何滑块等。如果以这种方式分离职责,则无需编写任何线程特定的代码。

于 2011-07-24T10:44:14.870 回答
1

我认为你应该使用asyntask:你在不同的线程中播放媒体并更新到 UI 线程。

于 2012-03-21T08:36:35.883 回答