Android开发之媒体播放工具类完整示例
作者:沉水之木
这篇文章主要介绍了Android开发之媒体播放工具类,结合完整实例形式分析了基于MediaPlayer的事件监听与多媒体文件播放相关操作技巧,需要的朋友可以参考下
本文实例讲述了Android开发之媒体播放工具类。分享给大家供大家参考,具体如下:
package com.maobang.imsdk.util; import android.media.MediaPlayer; import android.net.Uri; import android.util.Log; import java.io.FileInputStream; import java.io.IOException; import com.maobang.imsdk.app.IMApplication; /** * 媒体播放工具 */ public class MediaUtil { private static final String TAG = "MediaUtil"; private MediaPlayer player; private EventListener eventListener; private MediaUtil(){ player = new MediaPlayer(); } private static MediaUtil instance = new MediaUtil(); public static MediaUtil getInstance(){ return instance; } public MediaPlayer getPlayer() { return player; } public void setEventListener(final EventListener eventListener) { if (player != null){ player.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { eventListener.onStop(); } }); } this.eventListener = eventListener; } public void play(FileInputStream inputStream){ try{ if (eventListener != null){ eventListener.onStop(); } player.reset(); player.setDataSource(inputStream.getFD()); player.prepare(); player.start(); }catch (IOException e){ Log.e(TAG, "play error:" + e); } } public void stop(){ if (player != null && player.isPlaying()){ player.stop(); } } public long getDuration(String path){ player = MediaPlayer.create(IMApplication.getContext(), Uri.parse(path)); return player.getDuration(); } /** * 播放器事件监听 */ public interface EventListener{ void onStop(); } }
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android资源操作技巧汇总》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
您可能感兴趣的文章:
- 浅谈Android系统的基本体系结构与内存管理优化
- Android中使用ContentProvider管理系统资源的实例
- Android开发之弹出软键盘工具类简单示例
- Android开发之EditText框输入清理工具类示例
- Android开发之Activity管理工具类完整示例
- Android编程录音工具类RecorderUtil定义与用法示例
- Android开发中解析xml文件XmlUtils工具类与用法示例
- Android图片处理工具类BitmapUtils
- Android封装的http请求实用工具类
- 19个Android常用工具类汇总
- Android开发之超实用的系统管理工具类【SD卡,网络,uri,屏幕,网络,软键盘,文本,进程等】