自定义录音播放工具类MediaManager可播放网络音频
来源:互联网 发布:thinkphp防止sql注入 编辑:程序博客网 时间:2024/05/18 03:16
代码:
/** * Created by qianye on 2017/1/29. */public class MediaManager { private static MediaPlayer mMediaPlayer; private static boolean isPause; public static void playSound(String soundPath, MediaPlayer.OnCompletionListener onCompletionListener) { if (mMediaPlayer == null) { mMediaPlayer = new MediaPlayer(); mMediaPlayer.setOnErrorListener(new MediaPlayer.OnErrorListener() { @Override public boolean onError(MediaPlayer mediaPlayer, int i, int i1) { mMediaPlayer.reset(); return false; } }); } else { mMediaPlayer.reset(); } mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mMediaPlayer.setOnCompletionListener(onCompletionListener); try { mMediaPlayer.setDataSource(soundPath); mMediaPlayer.prepare(); mMediaPlayer.start(); } catch (IOException e) { e.printStackTrace(); } } public static void pause() { if (mMediaPlayer != null && mMediaPlayer.isPlaying()) { mMediaPlayer.pause(); isPause = true; } } public static void resume() { if (mMediaPlayer != null && isPause) { mMediaPlayer.start(); isPause = false; } } public static void release() { if (mMediaPlayer != null) { mMediaPlayer.release(); mMediaPlayer = null; } } public static boolean isPlaying() { if (mMediaPlayer != null && mMediaPlayer.isPlaying()) { return true; } return false; }}
使用:
//参数1:声音路径,可以是网络地址 参数2:播放完成监听 MediaManager.playSound(soundPath, new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer mediaPlayer) { } });
阅读全文
0 0
- 自定义录音播放工具类MediaManager可播放网络音频
- 音频播放工具类
- 录音,播放音频
- 录音/播放音频
- 音频播放\录音
- Android录音播放工具类,仿微信语音聊天。
- AVAudioRecord录音,AVAudioPlayer播放音频
- Android 音频 录音与播放
- 网络录音播放器
- Media播放(播放音频,录音等)
- 简介录音和播放音频实现
- Android音频操作:录音和播放
- 自定义音频播放器
- MediaPlayer播放网络音频
- MediaPlayer播放网络音频
- android播放网络音频
- Android 播放网络音频
- 音频播放,录音,视频播放,拍照,视频录制
- 苦逼人生!
- C++ 静态变量单例模式的误会(线程安全)
- C++搜索与回溯算法之移动问题
- dubbo版本2.8.4 消费者远程调用过程
- 对QTableWidget列表头序号进行重新排序
- 自定义录音播放工具类MediaManager可播放网络音频
- 变量的作用域与生命周期
- C#静态与非静态、构造函数、this关键字、析构函数
- solaris巡检脚本
- AlphaGo是如何战胜柯洁的?
- 网络异常模拟测试方法
- Knight Moves(翻译与题解)
- 运行hadoop自己提供的示例时,提示input文件夹不存在的解决方案
- linux 创建busybox命令链接 ---ln命令