千家信息网

怎么在Android平台下开发多媒体软件MediaPlayer

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,怎么在Android平台下开发多媒体软件MediaPlayer,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。现在将介绍一
千家信息网最后更新 2026年11月03日怎么在Android平台下开发多媒体软件MediaPlayer

怎么在Android平台下开发多媒体软件MediaPlayer,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

现在将介绍一下在Android平台下如何开发多媒体软件MediaPlayer。MediaPlayer可以用来播放视频和音频、流媒体。MediaPlayer的生命周期如下图:

从MediaPlayer的生命周期图,可以看出使用MediaPlayer不是很复杂。

最简单的流程:初始化->resrt()->setDataSource()->prepare()->start()->……只要简单的几步,就可以播放音频文件了。

来看看一个播放音频的例子吧,看代码和注释吧……

1: private Handler handler = new Handler() {   2:     3:         public void handleMessage(Message msg) {   4:             //更新进度条   5:             progressBar.setProgress(progressState);   6:         };   7:     };   8:     9: /**  10:      * 播放  11:      *   12:      * @param filePath  13:      *            文件路径  14:      */  15:     private void playMusic(String filePath) {  16:         try {  17:             progressState = 0;  18:             progressBar.setProgress(0);  19:             // 重置  20:             mediaPlayer.reset();  21:             // 设置数据源  22:             mediaPlayer.setDataSource(filePath);  23:             // 准备播放  24:             mediaPlayer.prepare();  25:             // 获取播放时长  26:             length = mediaPlayer.getDuration();  27:             progressBar.setMax(length / 1000);  28:             // 播放  29:             mediaPlayer.start();  30:             new Thread(new ProcessBarRefresh()).start();  31:             // 设置播放完毕监听  32:             mediaPlayer.setOnCompletionListener(new OnCompletionListener() {  33:                 @Override  34:                 public void onCompletion(MediaPlayer mp) {  35:                     nextMusic();  36:                 }  37:             });  38:    39:         } catch (Exception e) {  40:             displayToast(e.getMessage());  41:         }  42:     }  43:       44:     /**  45:      * 更新进度条  46:      * @author 张汉国  47:      */  48:     class ProcessBarRefresh implements Runnable{  49:    50:         @Override  51:         public void run() {  52:             while(isPlaying){  53:                 progressState = mediaPlayer.getCurrentPosition()/1000;  54:                 handler.sendMessage(handler.obtainMessage());  55:             }  56:         }  57:           58:     }

以上只是一个简单的实例,要开发一个播放器除了UI需要下功夫外,还得注意不少细节东西。

Android中音乐播放是一个后台进程,以上代码当调用 onStop()->onCreate() 的时候会重复加载播放列表,造成列表重复。这就需要用到 onSaveIntanceState(),这样子在onCreate()里面初始化播放列表的时候先判断 Bundle 是否为空,是否能拿到播放列表,如果拿不到在重新初始化。

再者Android自身也提供一个MediaStore这样一个Provider的属性对象供我们开发利用。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

开发 播放列表 音频 多媒体 平台 软件 代码 周期 文件 时候 生命 进度 帮助 更新 复杂 清楚 东西 中音 例子 内容 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技活动banner 互联网科技公司怎么样 互联网科技视频 青海省互联网新科技 湖南洣水互联网科技有限公司扣款 开启互联网科技时代小说 阿里巴巴算科技企业还是互联网 互联网教育科技公司vipkid 北京华百购互联网科技有限公司 世界互联网领先科技成果获奖 科技互联网海报 雨阳互联网卡科技有限公司 梅州GM互联网络科技有限公司 互联网科技数字货币 半导体行业属于互联网高科技类吗 陕西九四连强互联网科技有限公司 安徽九吞吴互联网科技有限公司 恒生互联网科技趋势 互联网大会出现的黑科技 恒生科技互联网指数十大成分股 中国互联网科技工作委员会毛军 互联网核心科技是什么 互联网扶贫科技 互联网与科技金融数据 互联网金融与金融科技 奔汉互联网科技 互联网和高科技公司 华夏恒生互联网科技013171 阿里互联网科技企业 互联网科技企业商标注意事项
0