android 播放视频代码
- 格式:doc
- 大小:72.50 KB
- 文档页数:11
android 播放视频
播放视频的两种方式:
使用VideoView播放视频(方便,推荐)
使用MediaPlayer和SurfaceView播放视频(早期的方式)
第一种方式:
使用VideoView播放视频的步骤如下:
在界面布局文件中定义VideoView组件,或在程序中创建VideoView组建
调用VideoView的如下两个方法加载指定视频
setVideoPath(String paht):加载path文件所代表的视频
setVideoURI(URI uri):加载uri所对应的视频
调用VideoVIew的start(),stop(),pause()方法来控制视频播放
MediaContraller类
与VideoView一起结合使用的还有一个MediaContraller类,它的作用时提供一个友好的图形控制界面,通过该控制界面来控制视频的播放,快进键,暂停键,后退键以及播放进度
条都是该类提供
例子代码:
xml布局:
?
1
2 3 4 5 xmlns:android="/apk/res/android "android:ori entation="vertical"android:layout_width="match_parent"android:layout_height="match_parent"> android:id="@+id/video"android:layout_width="match_parent"android:lay out_height="match_parent">
Activity : ?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 importjava.io.File;
importandroid.app.Activity;
importandroid.graphics.PixelFormat;
importandroid.os.Bundle;
importandroid.widget.MediaController;
importandroid.widget.VideoView;
publicclassVedioViewTestextendsActivity {
VideoView videoView;
MediaController mController;
@Override
publicvoidonCreate(Bundle savedInstanceState) {
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 super.onCreate(savedInstanceState);
getWindow().setFormat(PixelFormat.TRANSLUCENT);
setContentView(yout.main);
// 获取界面上VideoView 组件
videoView = (VideoView) findViewById(R.id.video);
// 创建MediaController 对象
mController =newMediaController(this);
File video =newFile("/mnt/sdcard/movie.mp4");
if(video.exists()) {
videoView.setVideoPath(video.getAbsolutePath());//① // 设置videoView 与mController 建立关联
videoView.setMediaController(mControl ler);//② // 设置mController 与videoView 建立关联
mController.setMediaPlayer(videoView);//③
// 让VideoView 获取焦点
videoView.requestFocus();
}
}
}
第二种方式:
使用MediaPlayer 播放视频的步骤如下:
创建MediaPlayer 对象,并让它加载指定的视频文件
在界面布局文件中定义SurfaceView 组件,或在程序中创建SurfaceView 组件,并为SurfaceView 的SurfaceView 的SurfaceHolder 增加Callback 监听器
调用 MediaPlayer 对象的setPisplay(SurfaceHolder sh):将所播放的视频图像输出到指定的SurfaceView 组件
调用MediaPlayer 对象的start(),stop(),和pause()方法来控制视频的播放
例子代码:
xml 布局: ?
1
2
3
4 5
6 7
8 9
xmlns:android="/apk/res/android "android:ori entation="vertical"android:layout_width="match_parent"android:layout_height="match_parent"> android:id="@+id/play"android:layout_width="wrap_content"android:layo ut_height="wrap_content"android:src="@drawable/play"> android:id="@+id/pause"android:layout_width="wrap_content"android:lay out_height="wrap_content"android:src="@drawable/pause"> android:id="@+id/stop"android:layout_width="wrap_content"android:layo ut_height="wrap_content"android:src="@drawable/stop">
Activity :