播放assets目录下音频
2016-07-08 11:54
169 查看
public class PlayAssetMusic {
private static MediaPlayer player;
private boolean flag;
}
private static MediaPlayer player;
private boolean flag;
private PlayAssetMusic() { } public static PlayAssetMusic getInstance() { return Holder.SINGLETON; } private static class Holder { private static final PlayAssetMusic SINGLETON = new PlayAssetMusic(); } /** * 调用方式:play("music.mp3",getResources().getAssets()); * * @param filename 播放assets目录下音频 * @param asm AssetManager * @throws IOException */ public void play(String filename, AssetManager asm) throws IOException { if (!flag) { flag = true; AssetFileDescriptor afd = asm.openFd(filename); player = new MediaPlayer(); player.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength()); player.prepare(); player.start(); player.setOnCompletionListener(new OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { mp.release(); flag = false; } }); } }
}
相关文章推荐
- 关闭 C4996 警告(_CRT_SECURE_NO_DEPRECATE)方法
- <python> 多線程/多進程/異步學習
- linux基础优化
- Java装饰模式(Decorator)—结构型
- flow.ci + Github + Slack 一步步搭建 Python 自动化持续集成
- Fiddler修改请求数据
- 转载c++经验
- java classloader理解(似乎不正确)
- 最大子数组问题
- linux下安装gcc,g++
- centos安装vsftp ftp服务端
- 值得推荐的C/C++框架和库 (真的很强大)
- OpenGL(三)图形变换之矩阵堆栈
- 返回专题
- android 单元测试
- **官方 Compressed TAR Archive 版本安装、卸载 centos 6.5**
- 自学MVC看这里——全网最全ASP.NET MVC 教程汇总
- StyleCop 安装
- virtualbox下安装centos7 网络配置
- flow.ci + Github + Slack 一步步搭建 Python 自动化持续集成