android实现视频播放的几种方式

android实现视频播放主要有以下三种方式,可以根据不同需求来使用不同的方式:

1、调用手机自带播放器,这是最简单的一种方法,几行代码搞定:

			Intent intent=new Intent(Intent.ACTION_VIEW);
			intent.setDataAndType(Uri.parse(path), "video/mp4");
			startActivity(intent);


2、如果想实现自己程序内置播放器,则可以使用VideoView来实现:

		Uri uri=Uri.parse("/mnt/ext_sdcard/DCIM/Camera/VID_20140501_130818.mp4");
	
		videoView.setMediaController(new MediaController(this));
		videoView.setVideoURI(uri);
		videoView.start();
		videoView.requestFocus();


其中,MediaPlayerController是控制媒体播放的接口;

3、使用MediaPlayer+SurfaceView实现播放器;这个会比较复杂,但是它可以实现很多自定义效果,在以后会有文章详细说明。


三种播放器的比较:

1)在这三种方式中,第一种是最简单的,但是它是调用手机自带播放器,如果想要在自己的APP中内置播放器则要使用第二种。


2)VideoView其实就是继承的SurfaceView、实现了MediaController.MediaPlayerController接口的组建。其中,SurfaceView用来显示视频内容,MediaPlayerController用来控制媒体播放。它能够实现包括快进、快退、播放、暂停按钮以及一个进度条的功能,它的优点就是简单易用,基本功能已经都帮我们封装好了,我们只要调用即可;缺点就是可扩展性差,无法实现一些自定义效果。关于VideoView API 可以参见我的另一篇文章:http://blog.csdn.net/annieliu502/article/details/39375353。


3)使用MediaPlayer+SurfaceView实现播放器可以实现自定义效果,缺点就是实现比较麻烦;使用MediaPlayer来控制媒体的播放,暂停,进度等;SufaceView则用来显示视频内容。







你可能感兴趣的:(Android)