Android开发之媒体播放工具类完整示例
本文实例讲述了Android开发之媒体播放工具类。分享给大家供大家参考,具体如下:
packagecom.maobang.imsdk.util;
importandroid.media.MediaPlayer;
importandroid.net.Uri;
importandroid.util.Log;
importjava.io.FileInputStream;
importjava.io.IOException;
importcom.maobang.imsdk.app.IMApplication;
/**
*媒体播放工具
*/
publicclassMediaUtil{
privatestaticfinalStringTAG="MediaUtil";
privateMediaPlayerplayer;
privateEventListenereventListener;
privateMediaUtil(){
player=newMediaPlayer();
}
privatestaticMediaUtilinstance=newMediaUtil();
publicstaticMediaUtilgetInstance(){
returninstance;
}
publicMediaPlayergetPlayer(){
returnplayer;
}
publicvoidsetEventListener(finalEventListenereventListener){
if(player!=null){
player.setOnCompletionListener(newMediaPlayer.OnCompletionListener(){
@Override
publicvoidonCompletion(MediaPlayermp){
eventListener.onStop();
}
});
}
this.eventListener=eventListener;
}
publicvoidplay(FileInputStreaminputStream){
try{
if(eventListener!=null){
eventListener.onStop();
}
player.reset();
player.setDataSource(inputStream.getFD());
player.prepare();
player.start();
}catch(IOExceptione){
Log.e(TAG,"playerror:"+e);
}
}
publicvoidstop(){
if(player!=null&&player.isPlaying()){
player.stop();
}
}
publiclonggetDuration(Stringpath){
player=MediaPlayer.create(IMApplication.getContext(),Uri.parse(path));
returnplayer.getDuration();
}
/**
*播放器事件监听
*/
publicinterfaceEventListener{
voidonStop();
}
}
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android资源操作技巧汇总》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。