Java 等待处理程序完成
我只是想通过媒体播放器播放音乐n秒 我的第一个文件:Java 等待处理程序完成,java,android,Java,Android,我只是想通过媒体播放器播放音乐n秒 我的第一个文件: public void Play_Music() { mTestUtils.ConnectDevice(); mTestUtils.playMusic(MUSIC_PATH, STREAM_TIME); mTestUtils.DisconnectDevice((); } 我的第二个文件: public void playMusic(String music_path, int stream_time) {
public void Play_Music() {
mTestUtils.ConnectDevice();
mTestUtils.playMusic(MUSIC_PATH, STREAM_TIME);
mTestUtils.DisconnectDevice(();
}
我的第二个文件:
public void playMusic(String music_path, int stream_time) {
MediaPlayer mMediaPlayer = new MediaPlayer();
try {
Log.i(TAG, "In Play mUsic");
mMediaPlayer.setDataSource(music_path);
mMediaPlayer.prepare();
mMediaPlayer.start();
new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
@Override
public void run() {
Log.i(TAG, "In Handler");
mMediaPlayer.stop();
mMediaPlayer.release();
}
}, stream_time);
Log.i(TAG, "Done Playing");
} catch (IOException e) {
e.printStackTrace();
}
return;
}
这里我的问题是如何让处理程序等待给定的时间。
这里发生的是调用play music,它执行该函数并立即返回以执行第一个文件中的下一条语句。我想等到处理函数完成,然后我需要将控件传递给第一个文件
提前感谢。我从您的问题中了解到,当您调用playMusic()方法时,它会开始播放并立即停止您的音乐。因为代码从上到下运行
https://stackoverflow.com/questions/3398363/how-to-define-callbacks-in-android
https://stackoverflow.com/questions/18054720/what-is-callback-in-android
然后在释放媒体播放器后,用单独的方法编写代码并从处理程序内部调用它