codecamp

Android VideoView实现视频播放

Android VideoView实现视频播放

xml文件

<VideoView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/video_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" />

java文件

package com.example.playvideo;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.MediaController;
import android.widget.VideoView;

public class PlayVideo extends ActionBarActivity {
    private VideoView videoView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_play_video);
        videoView = (VideoView) findViewById(R.id.video_view);
        MediaController mc = new MediaController(this);
        videoView.setMediaController(mc);
        //videoView.setVideoPath("/sdcard/forTest.mp4");//sdcard上的视频  
        videoView.setVideoPath("android.resource://com.example.showvideo/"+ R.raw.test);
        videoView.requestFocus();
        videoView.start();
    }
}

运行效果如下图:

备注:
遇到过一个叫Error (1,-2147483648)的错误,程序直接崩溃:

我查了一下,原来它代表 未知错误

真正的原因在于:

MP4有多种编码格式,例如H.264,H.263等,而Android版本较低的机器只支持部分编码。 
一旦遭遇不被支持的编码格式,MediaPlayer可能就会抛出上面的错误信息。

于是,我把被测试的mpg格式的视频换成mp4格式,结果就OK了。

Android ListFragment
Android存储和加载本地文件(内部存储设备)
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }