Android VideoView 如何彻底切换视频?

我是想做一个mp4的聊天背景,并且该聊天背景是可以切换不同mp4的。

现在遇到的问题是:在onCreate方法中赋予某播放资源Uri之后,当切换其他mp4后,第二段MP4播放完后,它自动又回到最初设置的MP4了!
或者在关闭设置界面AlertDialog后自动返回。现象还不一定

代码如下

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

    ImmersionBar.with(this).hideBar(BarHide.FLAG_HIDE_BAR).init();//25 隐藏全部(导航栏和状态栏)
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);//保持屏幕常亮
    mMySharedPreferences = new MySharedPreferences(this);
    mRbtnArray = new RadioButton[20];
    findViewSimple();
//        DeviceTools.viewVisibleSwitch(mSeniorEditTextControl);
//        DeviceTools.viewVisible(mSeniorEditTextControl,false);

    mSeniorEditTextControl.setmMessage(mApp.m.getF_DataMessage());

           //Mp4背景
           mBkvVideoView = findViewById(R.id.bv_BackgroundVideoView);
           mBkvVideoView.setOnClickListener(this);
           playMp4Resource(R.raw.liu_fang_ti_mp4);
}
  /**
     * 播放视频
     * @param p_resource  例如 R.raw.liu_fang_ti_mp4
     */
    private void playMp4Resource(int p_resource){
        if (p_resource == 0) {
            mBkvVideoView = null;
            return;
        }
        String l_st = String.format("android.resource://%s/%s",getPackageName(),p_resource);
        mBkvVideoView.setVideoURI(Uri.parse(l_st));
        //播放
        mBkvVideoView.start();
        //循环播放
        mBkvVideoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
            @Override
            public void onCompletion(MediaPlayer mediaPlayer) {
                mBkvVideoView.start();
            }
        });
    }
    @Override
    protected void onRestart() {
        //返回重新加载
//        playMp4Resource(0);
        super.onRestart();
    }

这个方法我试过,不过需要转一下格式