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`是一个非常实用的类,它允许开发者轻松地管理和播放短期音频效果。本示例将深入探讨如何在Android应用中使用`SoundPool`来实现音效的加载与播放,以提高用户体验。 `SoundPool`是...
在Android平台上,声音的播放是通过多种方式实现的,其中之一就是使用`SoundPool`类。`SoundPool`是一个高效的声音管理器,适用于短小、重复的声音效果,如游戏中的音效。下面我们将深入探讨`SoundPool`的工作原理、...
通过本文档,我们深入了解了Android平台下SoundPool的基本使用方法及其内部原理。了解这些内容有助于开发者更好地利用SoundPool功能,特别是在开发游戏和其他多媒体应用时。未来随着Android系统的不断更新,...
在Android平台上,SoundPool是一个非常重要的工具类,主要用于管理和播放短小的音频文件,比如游戏中的音效。它能够高效地处理多个音频流,并且支持动态调整音量、播放速度等特性,使得开发者在实现游戏或者应用的...
在Android开发中,SoundPool是一个非常实用的音频处理类,主要用于播放短小的音频片段,如游戏中的音效。它提供了高效的声音缓存机制,能够快速响应用户操作,实现音频的即时播放。在这个"SoundPool使用Example"中,...
在Android平台上,`SoundPool` 是一个非常实用的类,用于播放小的音频剪辑,特别是在游戏开发中,它能够高效地管理和播放大量的短音频。`SoundPool` 的优势在于它可以预先加载音频到内存,从而实现快速响应的音频...
在Android开发中,SoundPool是用于播放短暂音频效果的一个高效工具,特别适合处理游戏或应用中的声音反馈。本文将深入探讨SoundPool的工作原理、使用方法以及如何在实际项目中实现音效播放。 ### 1. SoundPool概述 ...
SoundPool类是Android提供的一个音频管理工具,特别适合于需要快速响应和重复播放短音频片段的应用场景。本示例将深入探讨如何利用SoundPool来播放音乐,并提供一个基础的实现案例。 首先,我们需要了解SoundPool的...
在Android开发中,SoundPool是实现短音频播放的重要工具,尤其适用于游戏或应用程序中的音效管理。本Demo源码提供了一个完整的示例,演示如何有效利用SoundPool来播放和控制音效。以下将详细解析SoundPool的核心概念...
在Android开发中,有时我们需要为应用添加音效以提升用户体验,这时`SoundPool`类就显得尤为重要。`SoundPool`是Android系统提供的一个音频管理工具,它允许开发者快速播放短期的音频剪辑,如游戏中的按钮点击声或...
1、你只需要在需要的地方调用这个方法进行类初始化 private void initSound() { soundPlay = new SoundPlay(); soundPlay.initSounds(this); soundPlay.loadSfx(this, R.raw.win, ID_SOUND_WIN); soundPlay....
### Android的SoundPool类使用与利弊 #### 一、SoundPool 类简介 在Android开发过程中,音频播放是一项常见的需求,特别是在游戏开发中。对于简短的音效播放,`SoundPool`类提供了非常高效且实用的方法。相比于`...
1. **初始化SoundPool**:在Activity的onCreate()方法中创建SoundPool对象,通常设置最大同时播放的音频流数量和音频流类型。例如: ```java SoundPool soundPool = new SoundPool.Builder() .setMaxStreams(5) /...
Android基础软件源码(SoundPool音效).zip
在Android开发中,即时音效的实现通常依赖于`android.media.SoundPool`类。`SoundPool`是一个高效的声音播放管理器,特别适用于处理小型、短促的音频剪辑,如游戏中的点击声、按钮音效等。下面我们将深入探讨如何...
"Android使用SoundPool实现播放音频" Android中使用SoundPool实现播放音频是一种常见的音频播放方式。SoundPool是一个音频管理器,主要用于播放短音频,例如游戏中的音效、提示音等。下面详细介绍了Android使用...
一个简单的sample , 用来理解及测试SoundPool的相关功能 相关博客 https://blog.csdn.net/qq_28261343/article/details/82818868
- 加载音频:通过SoundPool.load()方法加载音频资源,例如:`int soundId = soundPool.load(context, R.raw.sound_file, 1);` - 播放音频:`soundPool.play(soundId, volume, volume, priority, loop, rate);` 其中...
"SoundPool实例Demo"正是为了解决这个问题,它提供了兼容Android 4.0+到7.0+系统的音频播放解决方案。 1. **SoundPool介绍** SoundPool是Android系统提供的一种音频管理工具,它能够高效地加载和播放音频资源。...
一、SoundPool介绍 我们之前有用过MediaPlayer进行播放音频文件,但是当我们的应用程序需要经常的播放密集、短促的音效时,调用MediaPlayer则会占用系统的大量资源,且延时时间较长,不支持多个音频同时播放。这种...