任何人都可以教我如何让视频一个接一个地播放
我需要完整的代码
我有4个视频
Video1,Video2,Video3,Video4
我想首先播放Video1然后播放Video2,然后播放Video3,然后播放Video4
String path="android.resource://" + getPackageName() +"/" + R.raw.Video1;
videoView1.setVideoURI(Uri.parse(path));
videoView1.start();
答案 0 :(得分:0)
假设你有一个Videoview,你可以把视频的路径放到一个数组中,然后像这样检测播放的结束:
videoView.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
//start next video here
//for example, set video path to next array item
}
});
答案 1 :(得分:0)
也许你应该创建一个新的VideoView
来播放OnCompletionListener
的下一个视频,并删除旧的VideoView,添加新的VideoView。
它对我有用。
答案 2 :(得分:0)
使用exoPlayer连接多视频
答案 3 :(得分:0)
简短&简单
假设您在阵列列表中有四个视频
ArrayList<String> urlList = new ArrayList<>();
创建一个计数器变量来管理当前的视频播放。
int video_counter = 0;
现在,以下代码使您的工作轻松播放动态范围的视频以循环播放(就像一个接一个)。
VideoView vv_video = findViewById(R.id.vv_video);
vv_video.setVideoURI(Uri.parse(urlList.get(counter_video_loop)));
vv_video.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
vv_video.start();
}
});
vv_video.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
if ((video_counter + 1) <= urlList.size()) {
video_counter++;
vv_video.setVideoURI(Uri.parse(urlList.get(video_counter + 1)));
vv_video.start();
}
}
});