我是想做一个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();
}