Android多媒体--网络文件播放

阅读更多
网络文件就是指放在网络上的文件,也可能是流媒体等网络资源。由于这种方式不用存储比较方便,但它的弊端就是要通过网络,速度要比上两种方式差,因此一般网络播放方式要采用异步预处理方式。还有网络流量费用也会增加用户的使用成本。下面看看播放网络音频文件的代码请参考代码清单12-3,完整代码请参考Chapter12_3工程中AudioPlayer代码部分。
【代码清单12-3】
	private void play() {
		try {
			if (mMediaPlayer == null || state == STOP) {
				// 创建MediaPlayer对象并设置Listener
				mMediaPlayer = new MediaPlayer();
				mMediaPlayer.setOnPreparedListener(preListener);
			} else {
				// 复用MediaPlayer对象
				mMediaPlayer.reset();
			}
			// 播放网络媒体最好不要调用prepare()方法
			mMediaPlayer
					.setDataSource("http://www.51work6.com/android_book/audio/ma_mma.mp3");
			mMediaPlayer.prepareAsync();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

网络文件和本地文件其实可以采用相同播放方式,当时由于考虑网络速度的影响,网络播放一般采用异步预处理方法prepareAsync(),同步预处理方法prepare()也是可以播放网络文件的,但是用户体验不好。流程如图12-8所示。

Android多媒体--网络文件播放_第1张图片

图12-8播放流程
 播放网络音频文件不需要向其它的网络应用程序需要在AndroidManifest.xml文件中打开权限。
                                                                出自《Android开发案例驱动教程》
  • Android多媒体--网络文件播放_第2张图片
  • 大小: 17.1 KB
  • 查看图片附件

你可能感兴趣的:(Android,Mobile,网络应用,多媒体)