首页 > 移动平台 > 详细

Android SoundPool sample 1 not ready错误解决方法

时间:2014-02-28 12:06:27      阅读:545      评论:0      收藏:0      [点我收藏+]
Android SoundPool sample 1 not ready错误解决方法

DDMS报的错是sample not ready的问题,也就是说是在load加载音乐文件出错,导致在play播放音乐时显示not ready;
在SoundPool中有setOnLoadCompleteListener方法用来判断音乐加载是否完成,因此解决方法如下:

一、调用setOnLoadCompleteListener方法来确保音乐加载完成,注意需要SoundPool.OnLoadCompleteListener listener

需要实现SoundPool.OnLoadCompleteListener接口。

soundPool.setOnLoadCompleteListener(new OnLoadCompleteListener(){
            @Override
            public void onLoadComplete(SoundPool arg0, int arg1, int arg2) {
                soundPool.play(soundPoolMap.get(soundId), // 声音资源id
volume, // 左声道音量
volume, // 右声道音量
1, // 优先级
loop, // 循环次数 -1带表永远循环
0.5f // 回放速度0.5f~2.0f之间
);
            }});


二、可直接在load后面加sleep(1000),具体时间根据加载的文件的多少大小而定,给程序足够的时间去加载初始化音频文件。

// 将加载的声音资源id放进此Map
soundPoolMap.put(1, soundPool.load(this, R.raw.gamestart, 1));
try {
Thread.sleep(1000);// 给予初始化音乐文件足够时间
} catch (InterruptedException e) {
e.printStackTrace();
}


Android SoundPool sample 1 not ready错误解决方法,布布扣,bubuko.com

Android SoundPool sample 1 not ready错误解决方法

原文:http://blog.csdn.net/zhuifengshenku/article/details/20059659

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!