android开发之播放资源文件中的视频

作者:金良([email protected]) csdn博客:http://blog.csdn.net/u012176591

android开发之播放资源文件中的视频_第1张图片

android开发之播放资源文件中的视频_第2张图片

上图红圈内是要播放的视频文件及其在Android工程中的位置,生成的APK文件里包含了这个视频文件,造成APK体积偏大,建议尽量用体积小的视频文件。

布局文件:

<?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"
    android:id="@+id/MainView"
    >
    <SurfaceView android:id="@+id/SurfaceView"
        android:layout_height="320dip"
        android:layout_width="fill_parent">
    </SurfaceView>
    <Button android:id="@+id/toPlay"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:layout_gravity="center_vertical"
		android:text="播放视频">       
    </Button>

</LinearLayout>

Java文件:

package com.example.mediaplayer;

import java.io.IOException;
import android.app.Activity;
import android.os.Bundle;
import android.view.Display;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.view.SurfaceHolder;
import android.view.SurfaceView; 
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity 
{
	Display currentDisplay;
	SurfaceView surfaceView;
	SurfaceHolder surfaceHolder;
	MediaPlayer mediaPlayer;
	Button toPlay;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    	
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mediaPlayer = new MediaPlayer();
        
        toPlay = (Button)findViewById(R.id.toPlay);
        surfaceView = (SurfaceView) findViewById(R.id.SurfaceView);
        surfaceHolder = surfaceView.getHolder();
        surfaceHolder.setFixedSize(100, 100);
        surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
        toPlay.setOnClickListener(new OnClickListener()
        {
        	public void onClick(View v)
        	{
        		mediaPlayer.reset();
                mediaPlayer=MediaPlayer.create(MainActivity.this, R.raw.movies);//读取视频
                mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
                mediaPlayer.setDisplay(surfaceHolder);//设置屏幕
        		// TODO Auto-generated method stub
        		try {
        			mediaPlayer.prepare();
        		} catch (IllegalArgumentException e) {
        			// TODO Auto-generated catch block
        			e.printStackTrace();
        		} catch (IllegalStateException e) {
        			// TODO Auto-generated catch block
        			e.printStackTrace();
        		} catch (IOException e) {
        			// TODO Auto-generated catch block
        			e.printStackTrace();
        		}
        		mediaPlayer.start();
        	}
        });     
    } 
}

截图:

android开发之播放资源文件中的视频_第3张图片

你可能感兴趣的:(android,视频,资源文件,播放)