循环播放2个视频

时间:2018-06-14 06:53:34

标签: java android android-layout user-interface video

所以我已经完成了确保某个mp4下载视频在android studio中的应用程序中循环运行的任务。我想在同一个活动屏幕上添加另一个下载的mp4视频,以便两个视频连续循环运行,但我无法弄清楚如何实现它。

这是我的xml代码

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:id="@+id/activity_main"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"

<VideoView
    android:id="@+id/videoView"
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:layout_alignParentBottom="true" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentEnd="true"/>
</RelativeLayout>

这是我的主要活动代码

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    String fileName = "video";
    String filePlace = "android.resource://" + getPackageName() + "/raw/" + fileName;

    VideoView videoView = (VideoView) findViewById(R.id.videoView);
    videoView.setVideoURI(Uri.parse(filePlace));

    videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() 
    {
        @Override
        public void onPrepared(MediaPlayer mediaPlayer) {
            mediaPlayer.setLooping(true);
        }
    });

    videoView.setMediaController(new MediaController(this));

    videoView.start();
}
}

1 个答案:

答案 0 :(得分:0)

您可以使用Exoplayer库播放视频。在其中,有一个名为ConcatenatingMediaSource的类,其中可以附加多个媒体源。

无限期循环也可以通过ExoPlayer.setRepeatMode轻松完成。