我有一个MediaPlayer对象,然后,让我们说,5秒钟的歌曲时间应该调用回调。
如何使用MediaPlayer归档?
或者是否需要创建一个包装器,启动一个新的Thread,在该Thread中等待5秒并调用回调函数?
答案 0 :(得分:1)
MediaPlayer没有任何此类内容,但实现此目的的一种方法是使用Handler.postDelayed(Runnable, long)
。这将在特定延迟后执行Runnable。
https://developer.android.com/reference/android/os/Handler.html#postDelayed(java.lang.Runnable, long)
另一个选项是Timer.schedule(TimerTask, long)
。
https://developer.android.com/reference/java/util/Timer.html#schedule(java.util.TimerTask,长)
答案 1 :(得分:1)
Handler是你正在寻找的东西,因为媒体播放器对此没有任何api。
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
//Do something after 2000ms
playMusic()
}
}, 2000);