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所示。



图12-8播放流程
播放网络音频文件不需要向其它的网络应用程序需要在AndroidManifest.xml文件中打开<uses-permission android:name="android.permission.INTERNET"></uses-permission>权限。
                                                                出自《Android开发案例驱动教程》
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农老关【关东升】

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值