我想播放音频。我使用Thread,AsyncTask还是Service?

时间:2011-07-24 10:01:41

标签: android multithreading android-service seekbar android-asynctask

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

我有三个用于控制媒体的按钮:播放/暂停/停止。另外,我有一个媒体搜索栏,我可以使用它来前进/后退音轨。

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

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

谢谢,

3 个答案:

答案 0 :(得分:1)

如果您想每秒更新一次,我建议您TimerTask

答案 1 :(得分:1)

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

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

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

答案 2 :(得分:1)

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