如何将视频文件(mp4)添加到我的Android应用程序中?

use*_*244 1 java mp4 android android-videoview

我希望能够添加一个我创建的视频,当它在屏幕上显示时自动开始播放,到目前为止我的代码如下所示:

VideoView videoview = (VideoView) findViewById(R.id.button10);
Uri uri = Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.group_project);
videoview.setVideoURI(uri);
videoview.start();
Run Code Online (Sandbox Code Playgroud)

目前,当我点击并进入该屏幕时,没有任何反应.当我使用媒体播放器时播放声音,但我真的想添加此视频.任何帮助将非常感激.

Jor*_*sys 6

使用setOnPreparedListener()方法非常重要,并且一定要有一个名为group_project.mp4inside inside 的视频/raw.

  final VideoView videoview = (VideoView) findViewById(R.id.button10);
    Uri uri = Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.group_project);
    videoview.setVideoURI(uri);
    videoview.setOnPreparedListener(new OnPreparedListener() {
            @Override
            public void onPrepared(MediaPlayer mp) {
                videoview.start();    
            }
        });
Run Code Online (Sandbox Code Playgroud)

阅读文档:

在开始播放之前,MediaPlayer对象必须先进入"准备"状态.有两种方法(同步与异步)可以达到Prepared状态:调用prepare()(同步),一旦方法调用返回就将对象传递给Prepared状态,或者调用prepareAsync()(异步),它在调用返回后首先将对象转移到Preparation状态(几乎正确地发生),同时内部播放器引擎继续处理其余的准备工作,直到准备工作完成.当准备完成或者prepare()调用返回时,如果事先通过setOnPreparedListener(android.media.MediaPlayer.OnPreparedListener)注册了OnPreparedListener,则内部播放器引擎会调用OnPreparedListener接口的用户提供的回调方法 onPrepared().