android 播放视频代码

  • 格式:doc
  • 大小:72.50 KB
  • 文档页数:11

下载文档原格式

  / 11
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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 :