详解Android App中使用VideoView来实现视频播放的方法
通过VideoView播放视频的步骤:
1、在界面布局文件中定义VideoView组件,或在程序中创建VideoView组件
2、调用VideoView的如下两个方法来加载指定的视频
(1)setVidePath(Stringpath):加载path文件代表的视频
(2)setVideoURI(Uriuri):加载uri所对应的视频
3、调用VideoView的start()、stop()、psuse()方法来控制视频的播放
VideoView通过与MediaController类结合使用,开发者可以不用自己控制播放与暂停
packagecn.com.chenzheng_java;
importandroid.app.Activity;
importandroid.media.MediaPlayer;
importandroid.os.Bundle;
importandroid.util.Log;
importandroid.widget.MediaController;
importandroid.widget.VideoView;
importandroid.widget.MediaController.MediaPlayerControl;
publicclassVideoActivityextendsActivity{
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.video);
VideoViewvideoView=(VideoView)findViewById(R.id.videoView1);
/***
*将播放器关联上一个音频或者视频文件
*videoView.setVideoURI(Uriuri)
*videoView.setVideoPath(Stringpath)
*以上两个方法都可以。
*/
videoView.setVideoPath("data/yueding.mp3");
/**
*w为其提供一个控制器,控制其暂停、播放……等功能
*/
videoView.setMediaController(newMediaController(this));
/**
*视频或者音频到结尾时触发的方法
*/
videoView.setOnCompletionListener(newMediaPlayer.OnCompletionListener(){
@Override
publicvoidonCompletion(MediaPlayermp){
Log.i("通知","完成");
}
});
videoView.setOnErrorListener(newMediaPlayer.OnErrorListener(){
@Override
publicbooleanonError(MediaPlayermp,intwhat,intextra){
Log.i("通知","播放中出现错误");
returnfalse;
}
});
}
}
video.xml
<?xmlversion="1.0"encoding="utf-8"?> <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"android:layout_height="match_parent" android:orientation="horizontal"> <VideoViewandroid:layout_height="match_parent"android:id="@+id/videoView1" android:layout_width="wrap_content"></VideoView> </LinearLayout>
当然,我们也可以播放网络上的多媒体。