SoundManager2在Android上同时播放多个声音
SoundManager2 Playing Multiple Sounds at once on Android
如果你在soundmanager2中有两个声音通常你可以同时播放,在android和其他手机上调用播放一个声音将停止所有其他声音。
soundManager.setup({
preferFlash: false,
//, url: "swf/"
onready: function () {
soundManager.createSound({
url: [
"http://www.html5rocks.com/en/tutorials/audio/quick/test.mp3", "http://www.html5rocks.com/en/tutorials/audio/quick/test.ogg"
],
id: "music"
});
soundManager.createSound({
url: [
"http://www.w3schools.com/html/horse.mp3", "http://www.w3schools.com/html/horse.ogg"
],
id: "horse"
});
}
}).beginDelayedInit();
$("#horse").click(function () {
soundManager.play("horse"); // <- stops other sounds on mobile :(
});
$("#music").click(function() {
soundManager.play("music"); // <- stops other sounds on mobile :(
});
http://jsbin.com/hopapagefa/1/edit?html、js、输出
有一些方法我可以在android上运行多个声音?如果没有,我是否可以检测到这种一次只运行一个声音的能力?
推理:我想在游戏中有恒定的背景音乐,当某些事情发生时播放声音,理想情况下不停止背景音乐
我没有找到在android上运行多个声音的方法,但我所做的是检测声音是否被此限制所阻止,并在声音完成播放后重新启动它们,例如
var isPlaying = function (name) {
return soundManager.getSoundById(name).playState == 1;
};
// we want to play horse music over our background music
var oldPosition = soundManager.getSoundById('music').position;
soundManager.play("horse", {
onfinish: function() {
if(!isPlaying('music')) {
// mobile devices must have cut the background music off :(
// should probably check if its still appropriate to replay the background music
soundManager.play("music", {
position: oldPosition
});
}
}
});
相关文章:
- 如何减少在移动网络应用程序上播放声音的延迟
- 你能用sound.js在播放声音文件后5秒执行一个动作吗
- 可以'无法播放声音
- 使用javascript播放声音
- 点击播放声音
- 如何检测网页中的更改并使用Javascript播放声音
- 在悬停图像上播放声音,悬停在图像上时停止
- 无法使用JavaScript在iPhone上播放声音,但可以在Android上播放
- 播放声音时Cordova和HTML5的差异
- 在AngularJS中将元素添加到作用域时,如何在所有设备上播放声音
- 当弹出窗口关闭时播放声音文件(谷歌扩展)
- 在iPad上播放声音时延迟
- Javascript自动播放声音文件,单击其中一个按钮时停止
- HTML5音频标签没有播放声音的铬和safari中的第一个未聚焦标签
- 单击图像时播放声音
- Phonegap兼容代码,可在网站HTML/JS页面中播放声音
- 播放声音文件时突出显示句子
- 根据当前编号逐个播放声音文件
- 使用类似 Javascript 的 matlab 播放声音
- Chrome for iOS 中的 JavaScript 可以播放声音吗?