我在这里发帖是因为我使用 HTML5 音频标签来开发开源软件来帮助残疾人。
我意识到苹果在没有用户交互的情况下锁定了音频文件的读取(AudioVideo Conceptual Using HTML5 Audio Video Device SpecificConsiderations)。但是,这使我在所有浏览器中的 Ipad、Iphone 上的应用程序无法运行(我尝试了 google chrome 和 safari)。
尽管进行了大量研究,但我还没有找到任何解决方案(此功能的浏览器,可以在设备上进行配置,通过模拟点击技巧,...),这使应用程序无法使用。
如果有人知道如何“绕过”这个限制,我将不胜感激。
ps:我明白这不是默认行为,但是我可以访问测试设备来开发应用程序,这可以让我无法做到配置残疾。
ps之二:该应用程序在计算机和安卓的firefox上完美运行。
代码:
function makeAttente() {
"use strict";
var i, o, taille;
taille = audios.length;
for (i = 0; i < taille; i++) {
o = audios[i];
if(i<taille-1){
(function(arg1) {
o.addEventListener('ended', function() {
playSound(arg1+1);
}, false);
})(i);
document.getElementById("audio").innerHTML += "<br/> mot numero " + i + " d'une durée de " + o.duration + " secondes est écouté pour la fin pour le mot " + (i+1);
}
else{
if(! o.loadeddata ){
o.addEventListener('loadeddata',playSound(0), false);
}
else{
playsound(0);
}
document.getElementById("audio").innerHTML += "<br/> mot numero " + i + " est écouté pour la fin de chargement pour le mot " + (i+1);
}
}
}
function playSound(nbSon) {
"use strict";
var a, d;
if(nbSon === 0 ||audios[(nbSon-1)].played.length === 1){
a = audios[nbSon];
d = new Date();
document.getElementById("audio").innerHTML += "<br/> audio" + nbSon + " d'une durée de " + a.duration + " lancé avec le son " + a.currentSrc + " au temps >>> " +d.getMinutes() + ":"+d.getSeconds() + ":" + d.getMilliseconds();
a.volume = 1;
a.click();
a.play();
}
};
相关页面的网址(现为法语项目): http ://ci.worldheberg.com/fr-appli-test.html
编辑:全局变量 audios 包含所有音频 dom 元素,您可以在音频的 div 中显示一个小调试器