我想在我的活动中播放音频文件。
我有三个用于控制媒体的按钮:播放/暂停/停止。此外,我有一个媒体搜索栏,可用于前进/后退曲目。
我正在尝试每 1 秒更新一次搜索栏进度。然后,我想到了Threads。这是正确的方向还是我需要考虑使用Services或AsyncTasks?
MediaPlayer 是否带有搜索栏?这对我有很大帮助。
谢谢,
我想在我的活动中播放音频文件。
我有三个用于控制媒体的按钮:播放/暂停/停止。此外,我有一个媒体搜索栏,可用于前进/后退曲目。
我正在尝试每 1 秒更新一次搜索栏进度。然后,我想到了Threads。这是正确的方向还是我需要考虑使用Services或AsyncTasks?
MediaPlayer 是否带有搜索栏?这对我有很大帮助。
谢谢,
如果您想每秒更新一次,我会推荐TimerTask。
我会设置一个用于控制媒体播放器的服务,以及用于应用程序显示的 AsyncTask。
让您的应用程序向服务发送消息以停止、启动(使用按钮的 onClick),并在需要更新屏幕信息时获取当前位置信息。这将使演奏与控制分开。
您的应用程序可以使用简单的 AsyncTask 在其后台线程中暂停 (SystemClock.sleep(1000)),并在 UI 上运行的更新进度线程中更新任何滑块等。如果以这种方式分离职责,则无需编写任何线程特定的代码。
我认为你应该使用asyntask
:你在不同的线程中播放媒体并更新到 UI 线程。