AppMobi, html5音效适用于模拟器和android,但不适用于iphone

AppMobi, html5 sound working on simulator and android but not in iphone

本文关键字:适用于 iphone android 不适用 模拟器 html5 音效 AppMobi      更新时间:2023-09-26

今天我开始学习appmobi。我正在开发一个处理声音的小例子。

我只需要创建一个处理器来播放和停止许多声音。

var audioOn = new Audio('sounds/11.mp3'); 
audioOn.play();

这段代码可以在xdk模拟器上运行,也可以在android设备上运行,但不能在我的Iphone 5上运行。

问题是,如果我使用标签它在iphone上工作,但我想使用javascript原生api来处理声音和更多。

我一直在尝试用appmobi播放器库来处理它,但是它没有停止、恢复等控制,所以我想使用native。

下面是部分javascript代码:

<script type="text/javascript">
/* This function runs once the page is loaded, but appMobi is not yet active */
var init = function(){
var alarmButton = document.getElementById("alarmButton");
var on = false;
//var audioOn = new Audio('http://rpg.hamsterrepublic.com/wiki-images/3/3e/Heal8-Bit.ogg');
var audioOn = new Audio('sounds/11.mp3'); 
audioOn.addEventListener('ended', function() {
this.play();
}, false);
var but = function(){
alert("but");
alert(on);
alert(audioOn);
if(!on){
on = true;
audioOn.currentTime = 0;
audioOn.play(); 
}
else{
on = false;
audioOn.pause(); 
}
}
//alarmButton.addEventListener("click",but,false);
alarmButton.addEventListener("touchstart",but,false);
alarmButton.addEventListener("tap",but,false);
};
window.addEventListener("load",init,false);
/* This code prevents users from dragging the page */
var preventDefaultScroll = function(event) {
event.preventDefault();
window.scroll(0,0);
return false;
};
document.addEventListener('touchmove', preventDefaultScroll, false);
/* This code is used to run as soon as appMobi activates */
var onDeviceReady=function(){
//Size the display to 768px by 1024px
AppMobi.display.useViewport(768,1024);
//hide splash screen
AppMobi.device.hideSplashScreen(); 
};
document.addEventListener("appMobi.device.ready",onDeviceReady,false);
function echo(){
alert("clicked");
}
</script>

Thanks to lot

这似乎不是appmobi的问题。

我认为appmobi实验室应用程序为iphone使用safari移动运行html5测试。

所以这是safari手机的事情。

似乎play()工作时,由onclick事件启动。见http://groups.google.com/group/iphonewebdev/browse_thread/thread/91e31ba7ae25e6d4?hl=en

需要进行一些测试…

我必须试试这个:

http://www.schillmania.com/projects/soundmanager2/

在现代浏览器中支持HTML5音频可能会很乏味,更不用说了遗留的。真实世界的访问者使用的浏览器从从移动Safari到IE 6,可以跨越各种各样的设备有许多需要考虑的支持案例

SoundManager 2给你一个单一的,强大的API,支持这两个新的旧的,使用HTML5音频支持和可选的基于flash在需要的地方后退。理想情况下,当使用SoundManager 2时,音频"只是的工作原理。"