在Android中,要停止SoundPool的播放,您需要首先获取到SoundPool对象以及正在播放的音频ID。以下是一个简单的示例:
- 首先,在您的Activity中初始化SoundPool:
import android.media.SoundPool;
public class MainActivity extends AppCompatActivity {
private SoundPool soundPool;
private int soundId;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 初始化SoundPool
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
soundPool = new SoundPool.Builder().setMaxStreams(1).build();
} else {
soundPool = new SoundPool(1, AudioManager.STREAM_MUSIC, 0);
}
// 加载音频文件
soundId = soundPool.load(this, R.raw.your_audio_file, 1);
}
}
- 然后,在需要停止播放的地方,调用
soundPool.stop()
方法:
// 停止播放音频
soundPool.stop(soundId, 1);
请注意,您需要根据实际情况替换R.raw.your_audio_file
为您的音频文件名。同时,如果您在Activity的onDestroy()
方法中释放SoundPool资源,请确保在调用soundPool.stop()
之前先停止所有音频流。