关闭

Android之视频播放

812人阅读 评论(0) 收藏 举报
    视频播放比音频播放要复杂一些,除了音频之外,还需要考虑一个视觉组件。为了解决这一问题,Android提供了一个专门的视图控制器android.widget.VideoView,封装了MediaPlayer的创建和初始化过程,这个小部件可以用在任何布局管理器中,而且它提供了很多显示选项,包括缩放和着色。要实现播放功能,我们要做的是,创建一个VideoView小部件并将其设置为用户界面的内容,然后设置视图的路径或URI并触发start()方法。

    视频播放除了需要按钮控件外,还需要一个显示视频的框架。对于我们这个例子,这里使用VideoView组件显示视频内容,没有创建我们自己的按钮控件,而是创建了一个MediaController来提供这些按钮(如果需要另外创建的话,也可以自己创建)。

代码如下:

-----------------------------MainActivity----------------------------

package cn.com.pan;

import android.app.Activity;
import android.net.Uri;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.VideoView;
public class MainActivity extends Activity {
   private VideoView videoView;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        videoView = (VideoView) this.findViewById(R.id.videoView);
        MediaController mc = new MediaController(this);
        videoView.setMediaController(mc);
        //videoView.setVideoURI(Uri.parse(""));
        videoView.setVideoPath("/sdcard/test.mp4");
        videoView.requestFocus();
        videoView.start();
    }
}

--------------------------------main.xml------------------------------

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <VideoView
     android:id="@+id/videoView"
     android:layout_width="320dip"
     android:layout_height="260dip"
    ></VideoView>
</LinearLayout>

    在运行应用程序前,我们需要在模拟器中设置sdcard。创建一个新的SD卡映像mksdcard 512M mysdcard,使用emulator-sdcard mysdcard命令将SD卡加载到模拟器中,然后将文件test.mp4放入磁盘映像中,再启动应用程序。

2
1

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:15821次
    • 积分:340
    • 等级:
    • 排名:千里之外
    • 原创:18篇
    • 转载:2篇
    • 译文:0篇
    • 评论:3条
    文章存档
    最新评论