android - 视频无法在 android 中播放
问题描述
我正在尝试在我的登录屏幕上播放视频。我已经导入了 mp4 视频文件。但是当我运行这段代码时,视频并没有出现在屏幕上。事实上,视频文件显示为 ?? 符号。我是否需要添加其他内容才能播放视频?
<VideoView
android:id="@+id/videoView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
Java部分
public VideoView videoView;
public MediaPlayer mediaPlayer;
@OnClick(R.id.email_sign_in_button)
void delegateLogin() {
progressBar.setVisibility(View.VISIBLE);
loginPresenter.doLogin(usernameInput.getText().toString(), passwordInput.getText().toString());
}
@OnClick(R.id.register_now_button)
void registerNow(){
loginPresenter.doOpenRegisterScreen(this);
}
@OnClick(R.id.forgot_password_button)
void forgotPassword(){
loginPresenter.doOpenForgotPasswordScreen(this);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
ButterKnife.bind(this);
videoView=(VideoView)findViewById(R.id.videoView1);
Uri uri= Uri.parse("android.resource://"
+getPackageName()
+"/"
+R.raw.mt_launch_screen);
videoView.setVideoURI(uri);
// videoView.requestFocus();
videoView.start();
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
mediaPlayer.setLooping(true);
// mediaPlayer.start();
}
});
解决方案
尝试移动videoView.start()
videoView.setVideoURI(uri);
// videoView.requestFocus();
// videoView.start(); /* don't start it if you setOnPrepared? */
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
videoView.start(); //Start here
mediaPlayer.setLooping(true);
// mediaPlayer.start();
}
});
推荐阅读
- java - 是否可以使用 Comparator.comparingInt 链按两个字段以相反的自然顺序对对象进行排序
- python - 致命的 Python 错误:无法获取 <_io.BufferedWriter name=' 的锁
'> 在解释器关闭时,可能是由于守护线程 - reactjs - 状态中的计数器增量未更新
- python - Python:删除重复项之间的列表中的部分
- java - Spring Data MongoDB GroupOperation 转换为 ObjectID
- git - Git认为分支不是相同的
- mysql - 如何根据不同的列在Mysql中连接两个表并汇总它们的列
- r - 使用 fix() 或 edit() 函数更改 R 中的另一个函数
- macos - Mac chrome 无法添加受信任的站点
- python - 如何在循环外打印项目?